2009 – 1

È data la seguente funzione:

int foo() 
{
    int i, sum=0;
    for(i=10; i >= 0; i--)
        sum += i+(10–i);
    return(sum);
}

Quale tra i seguenti valori viene restituito dalla funzione foo() ?

Risposte:

  1. 100
  2. 110
  3. 10
  4. 90.

Soluzione: b (110).


Il ciclo for() viene eseguito per i=10…0 quindi viene eseguito 11 volte.

A ogni passo

sum = sum+i+(10-i) = sum+10

Quindi

sum = 11*10 = 110

.