Esercitazione 1

Istruzioni : Svolgere almeno un esercizio fra 1-3, ed uno fra 4 e 5. L’esercizio 6 tratta argomenti che vedremo nella prossima lezione ed è riservato a chi ha finito i primi 5.

Esercizio 1. Scrivere un programma C che stampa il quadrato di un numero letto da tastiera.

Esercizio 2. Modificare il programma precedente in modo da leggere in ingresso 3 interi (positivi e negativi) e stampare la loro media aritmetica (intera), il massimo ed il minimo.

Esercizio 3. Estendere il programma precedente in modo da leggere una sequenza di numeri positivi o nulli, terminata da "-1".

Esercizio 4. È legale in C il seguente comando :

c = (a=2) + (b=4);

(dove a, b, c sono variabili di tipo int ) ? Se si, che valore hanno a, b e c dopo la sua esecuzione, supponendo che prima valgano tutte 0 ?

Esercizio 5. È legale in C il seguente comando :

c = (printf("Uno strano comando \n")) * 2 + 4;

(dove c è una variabile di tipo int ) ? Se si, qual è il suo effetto ?

Esercizio 6. (Opzionale) Gli array vengono denotati in C specificando il numero di dimensioni e l'ampiezza di ogni dimensione con la seguente sintassi :

int f[10]; /* un vettore f di 10 interi */

int g[2][3]; /* una matrice di interi 2x3 */

Gli indici di ogni dimensione di ampiezza N variano fra 0 e N-1 e gli elementi di un array vengono denotati come segue :

g[i][j] /* denota l'elemento (i,j)-esimo della matrice i */

f[5] /* denota l’elemento di indice 5 del vettore f */

Scrivere un programma C che accetta legge 10 interi in modo interattivo e li stampa su video in ordine crescente.