代码在执行while循环后关闭,并且不执行最后2个printf语句。我不知道什么是错的...在循环到达选定的时间之后,程序才会关闭。
#include <stdio.h>
int main()
{
int numberofq;
int questionansc;
int questionansic;
int counter;
int answer;
numberofq = 0;
questionansc = 0;
questionansic = 0;
counter = 0;
answer = 0;
while(numberofq <1 || numberofq >5)
{
printf("Hello enter the amount of questions you want between 1 and 5 \n");
scanf("%d", &numberofq);
} // End While
//Program runs until the counter is less than users wanted question number.
while (counter < numberofq)
{
//Question 1
printf("Question 1. what is 2+2? \n");
scanf("%d" , &answer);
//if users answer is equal to 4.
if (answer == 4)
{
printf("You entered %d, you are correct\n", answer);
questionansc = questionansc +1;
} //End If
//If the answer is not equal to 4.
else
{
printf("You entered %d, you are wrong correct answer is 4 \n", answer);
questionansic = questionansic +1;
} // End Else
counter = counter +1;
//End Question 1.
} //End While
printf("You got %d questions correct \n" , questionansc);
printf("You got %d questions wrong" , questionansic);
flushall();
return 0;
} // End Main`
答案 0 :(得分:1)
它实际打印出来并然后退出,但它退出的速度很快,您没有机会看到它。
您可以在Windows上使用system("pause")
暂停执行,但这被认为是不好的做法。您可以使用getch()
或其他东西,但您也可以简单地从现有的CMD /终端调用程序,这样输出将在程序完成后保留在那里。