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()?

  1. c=100
  2. c=101
  3. c=199
  4. il ciclo while non termina mai, quindi non viene visualizzato nulla.

Soluzione: c (c=199)


Osserva

c i
0 0
1 1
2 1
3 2
4 2
5 3
6 6
... ...
n 2(n-1)+1, per n dispari
2n, per n pari
... ...
198 99
199 100

Quando i=100 il ciclo termina e c=199.