今天在VS中编译c语言时,发现scanf出现了问题。代码如下:
#include<stdio.h>
int main()
{
int k = 0;
float i, a, b, sum = 0;
while (scanf("%f", &i)!=EOF)
{
a = i;
sum += a;
k++;
}
b = sum / k;
printf("%f\n", b);
system("pause");
return 0;
}
点击运行发现,一直敲回车键始终没用,如下图:
这时,使用dev c++是可以使用的。这是什么情况呢?
查找资料发现,EOF是判断文件的结尾符,所以在vs中需要使用 Ctrl+z +Enter,连续敲打三次,这样就会模拟一个文件结尾。如下图:
秀啊!