2015 – 1

È dato il seguente programma:

#include 
int main() 
{
   int a,b,c,temp;
   a=0;
   b=1;
   c=2;
   while(c > a)
   {
      if(b < c)
      {
         temp=c;
         c=b;
         b=temp;
      }
      else
         c=a-1; 
      }
   printf("%d",c);
   return 0;
}

Scegliere la risposta corretta tra le seguenti

  1. Il programma scrive a video 0
  2. Il programma scrive a video 1
  3. Il programma scrive a video 2
  4. Nessuna delle precedenti risposte è corretta

Soluzione: d (nessuna delle precedenti risposte è corretta).


Osserva

  • a=0
  • b=1
  • c=2
  • (c > a) => (2 > 1) => Sì
    • (b < c) => (1 < 2) => Sì
      • b=2
      • c=1 (scambia i valori di b e c)
  • (c > a) => (1 > 0) => Sì
    • (b < c) => (2 < 1) => No
      • c=-1 (a-1)

Visualizza -1.