13/01/13 22:32
dpstart
Salve a tutti Sto facendo qualche esercizio per prendere un pò la mano col C, e ho quindi provato ad implementare questo programma che esegue addizioni, sottrazioni, moltiplicazioni e divisioni:
Il problema è che eseguendolo mi da alcuni problemi: accetta solo l'opzione 1, e inoltre termina prima di poter rispondere a "Do u want to continue?"
Qualcuno saprebbe spiegarmi gli errori che ho commesso? Grazie in anticipo.
#include<stdio.h> #include<stdlib.h> int answer; float num1, num2, r; char cont; int main () { do{ do{ printf("What operation do you want me to do?\n 1.Add\n 2.Subtract\n 3.Multiply\n 4.Divide\n"); scanf("%d", &answer);} while(answer>1 && answer<5); printf("insert two numbers: "); scanf("%f ", &num1); scanf("%f", &num2); switch(answer) { case 1: r=num1+num2; break; case 2: r=num1-num2; break; case 3: r=num1*num2; break; case 4: r=num1/num2; break; } printf("The result is %f\n :", r); printf("Do u want to continue?(Y/N) "); scanf("%c", &cont); } while(toupper(cont)=='Y'); return 0; }
Il problema è che eseguendolo mi da alcuni problemi: accetta solo l'opzione 1, e inoltre termina prima di poter rispondere a "Do u want to continue?"
Qualcuno saprebbe spiegarmi gli errori che ho commesso? Grazie in anticipo.
Ultima modifica effettuata da dpstart 13/01/13 22:34
aaa