2009 – 4

Si consideri il seguente frammento di programma: main() { int a=3; int b=2; int c; c=a*b/4*(a/b)*4+a*(b/4*a)/(b*4); printf(“c=%d\n”, c); } Cosa viene visualizzato a video dall’esecuzione di main()? Soluzione: 4 Osserva c = a*b/4*(a/b)*4+a*(b/4*a)/(b*4) = 3*2/4*(3/2)*4+3*(2/4*3)/(2*4) = 6/4*(1)*4+3*(0*3)/8 = 1*1*4+3*0/8 = 4

2009 – 3

Si consideri il seguente frammento di programma: void foo(int *a, int b) { b = b * *a; *a = *a * b; } main() { int a=2; int b=3; foo(&a, b); foo(&b, a); printf(“a=%d, b=%d\n”, a, b); } Cosa viene visualizzato a video dall’esecuzione di main()? Soluzione: a=12, b=108 La funzione foo() chiamata con gli … Leggi tutto

2011 – 7

È dato il seguente programma: #include void f(int T[], int i, int dim) { if(i < dim) { f(T, 2*i+1, dim); printf("%d", T[i]); f(T, 2*i+2, dim); } } main() { int Q[8]={1, 2, 3, 4, 5, 6, 7, 8}; printf("ris = "); f(Q, 0, 8); } Cosa viene visualizzato a video dall'esecuzione di main()? Soluzione: ... Leggi tutto

2011 – 5

Si consideri il seguente frammento programma: #define N 9 int R[N]; int i=0, j=(N-1), c=0, k; while(i < j) if(R[i]+R[j] > k) { c += (j-i); i++; } else j–; Dire cosa contiene la variabile c al termine dell’esecuzione del frammento di programma, quando: N = 9 R = [100, 87, 67, 54, 34, 23, … Leggi tutto

2011 – 4

Si consideri il seguente frammento programma: int main(void) { int T[25], S[10], W[5], i; i=0; while(i

2011 – 3

È dato il seguente programma: #include #define nrig 5 #define ncol 5 int i, j, m[nrig][ncol]; main() { for(i=0; i < nrig; i++) for(j=0; j < ncol; j++) m[i][j]=i*j+j; for(j=ncol-1; j >= 0; j–) { for(i=nrig-1; i >= 0; i–) printf(“%d “, m[i][j]); printf(“\n”); } } Cosa viene visualizzato a video dall’esecuzione di main()? 20 … Leggi tutto

2011 – 2

È dato il seguente programma: #include int x,y; void alfa(int *x, int y) { y=*x*y; *x=*x*y; } void beta(int *x, int y) { *x=*x*y; y=*x*y; } main() { x=3; y=3; alfa(&x, y); printf(“x=%d y=%d”, x, y); x=3; y=3; beta(&x, y); printf(” x=%d y=%d\n”, x, y); } Cosa viene visualizzato a video dall’esecuzione di main()? x=9 … Leggi tutto

2011 – 1

È dato il seguente programma: #include int i, c; main() { c=0; i=0; while(i < 100) { c++; if(c%2 != 0) i++; } printf("c=%d\n", c); } Cosa viene visualizzato a video dall'esecuzione di main()? c=100 c=101 c=199 il ciclo while non termina mai, quindi non viene visualizzato nulla. Soluzione: c (c=199) Osserva c i 0 ... Leggi tutto

2013 – 7

È dato il seguente programma: #include int F(int a, int b) { if(a == b) return b; else if(a > b) return G(a-b, b); else return F(b, b-a); } int G(int a, int b) { if(a == b) return b; else if(a < b) return G(b-a, a); else return F(a-b, b); } void main() { ... Leggi tutto