有关for循环的问题,求解。
#include <stdio.h>#include <ctype.h>
int main (void)
{
char answer='N';
double total=0.0;
double value=0.0;
int count=0;
printf("This program calculates the average of any number of values.");
for ( ; ; )
{
printf("\nEnter a value:");
scanf("%lf",&value);
total+=value;
++count;
printf("Do you want to enter another value?(Y or N):");
scanf("%c",&answer);
if (tolower(answer)=='n')
break;
}
printf("\nThe average is %.2lf\n",total/count);
return 0;
}
这个是《C语言入门经典》p139的试试看:最小for循环的程序代码
我编译上去以后发现出现这个结果:Do you want to enter another value ?(Y or N):
Enter a value:
也就是说,我还没有输入y或者n,他就直接让我输入一个数了。
如果我注释掉for循环中前四行代码,运行程序总是会出现两次Do you want to enter another value ?(Y or N):
我找了很久就是不知道问题到底出现在哪里了,求解。