Si consideri il seguente frammento di programma:
#define N 15 main() { int i, j; char frase[]; char t; i=1; do { for(j=0; j < N; j++) { t=frase[j]; frase[j]=frase[(j+i)%N]; frase[(j+i)%N]=t; } i += 1; } while(frase[8] != ' '); printf("%s\n", frase); }Quale tra le seguenti stringhe di 15 caratteri utilizzate per inizializzare il vettore frase (immediatamente prima dell’istruzione i:=1;) fa sì che al termine dell’esecuzione del programma venga visualizzata a video la stringa Risposta esatta?
Risposte:
- Soltanto "itRtasposta esa"
- Soltanto "ieRsasttaposta "
- Sia "itRtasposta esa" sia "ieRsasttaposta "
- Né "itRtasposta esa" né "ieRsasttaposta "
Soluzione: c (sia "itRtasposta esa" sia "ieRsasttaposta ")
Osserva quale frase iniziale porta alla soluzione dopo quanti passi
- dopo un passo: "Raisposta esatt"
- dopo 2 passi: "itRtasposta esa"
- dopo 3 passi: "ieRsasttaposta "