Docsity
Docsity

Prepara i tuoi esami
Prepara i tuoi esami

Studia grazie alle numerose risorse presenti su Docsity


Ottieni i punti per scaricare
Ottieni i punti per scaricare

Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium


Guide e consigli
Guide e consigli

Programmazione per la musica - Tema d'esame 14-02-2007, Prove d'esame di Programmazione Per La Musica II

Tema d'esame del corso di Programmazione per la musica

Tipologia: Prove d'esame

2009/2010

Caricato il 23/01/2010

antonio
antonio 🇮🇹

4.4

(3748)

708 documenti

1 / 4

Documenti correlati


Anteprima parziale del testo

Scarica Programmazione per la musica - Tema d'esame 14-02-2007 e più Prove d'esame in PDF di Programmazione Per La Musica II solo su Docsity! Università degli Studi di Milano Dipartimento di Informatica e Comunicazione Corso di Laurea in Scienze e Tecnologie della Comunicazione Musicale Programmazione per la Musica II - Prof. Luca A. Ludovico Anno Accademico 2006/07 Tema d’esame del 14/2/2007 Secondo appello Cognome e nome: _____________________________________ Firma: _____________________________________ Matricola: ___________ Il presente tema d’esame si articola in 16 domande, inerenti argomenti del linguaggio C e C++ svolti durante il corso. In mancanza di indicazione esplicita, è indifferente rispondere con riferimento al linguaggio C o al linguaggio C++. Le domande sono a risposta multipla, e per ogni domanda un’unica risposta è corretta. Ogni risposta corretta incrementa di 2 punti il punteggio complessivo, ogni risposta errata detrae 0.5 punti e ogni risposta non fornita dà incremento nullo. 1. Al termine dell’esecuzione del seguente blocco di codice: int pitch = 5; pitch = 3 * pitch--; quale valore contiene la variabile pitch? 1.a  Al termine la variabile pitch contiene il valore 4. 1.b  Al termine la variabile pitch contiene il valore 12. 1.c  Al termine la variabile pitch contiene il valore 14. 1.d  Al termine la variabile pitch contiene il valore 15. 2. Analizzando il seguente blocco di codice: float frequency = 440; bool surprise; // surprise inizializzato a true o a false frequency *= surprise ? 2 : 0.5; qual è il compito della variabile surprise? 2.a  Sommare al valore di frequency i valori 2 oppure 0.5. 2.b  Modificare il valore di frequency raddoppiandolo o dimezzandolo. 2.c  frequency viene moltiplicata per surprise. 2.d  surprise viene moltiplicata per 2 o per 0.5 a seconda del valore di frequency. 3. Considerare il seguente blocco di codice: int counter = 5; while (counter > 5) printf (“%d“, counter--); 3.a  Il blocco di codice interno al ciclo non viene mai eseguito. 3.b  L’operatore di autodecremento dentro l’istruzione printf causa errore di compilazione. 3.c  Viene prodotta in output una stringa infinita di 5. 3.d  Viene prodotta in output la stringa 54321. 4. Date le variabili booleane diesis e bemolle, dichiarate e inizializzate in un blocco di codice precedente, si considerino le istruzioni: char step = ‘C’; if (!(bemolle || diesis) && step == ‘C’) printf (“Do naturale”); In quali casi viene stampata a video la stringa Do naturale? 4.a  Solo nel caso in cui bemolle e diesis siano entrambi true. 4.b  Solo nel caso in cui bemolle e diesis siano entrambi false. 4.c  Solo quando bemolle risulta diverso da diesis. 4.d  Mai. 5. L’esecuzione del seguente blocco di codice: char title[17] = “Adagio per archi”; int counter = 0; while (title[counter++]) (title[counter])++; quale operazione compie? 5.a  Nessuna, in quanto non è possibile applicare l’autoincremento a un array di caratteri. 5.b  Genera un ciclo infinito. 5.c  Muove il puntatore di due caratteri in avanti a ogni iterazione. 5.d  Trasforma il contenuto di title in “Aebhjp!qfs!bsdij” 6. Quale valore contiene la variabile step al termine del seguente blocco di codice? int step = 2, multiplier = 1; switch (step) { case 1: step *= multiplier; case 2: step *= (multiplier + 1); case 3: step *= (multiplier + 2); default: step *= -1; } 6.a  step = 3. 6.b  step = 4. 6.c  step = 12. 6.d  step = -12. 7. Si determini il valore finale contenuto in punta_nota2, dato il seguente blocco di codice: int nota = 5, *punta_nota1, *punta_nota2; punta_nota1 = &nota; punta_nota2 = (*punta_nota1)--; 7.a  L’assegnamento dell’ultima istruzione è sintatticamente errato e viene rigettato dal compilatore. 7.b  punta_nota2 punta alla stessa locazione di memoria di punta_nota1, contenente il valore 4. 7.c  punta_nota2 punta alla stessa locazione di memoria di punta_nota1, contenente il valore 5. 7.d  punta_nota2 punta al valore 4 mentre punta_nota1 al valore 5.
Docsity logo


Copyright © 2024 Ladybird Srl - Via Leonardo da Vinci 16, 10126, Torino, Italy - VAT 10816460017 - All rights reserved