C语言中,怎样判断scanf函数输入结束呢?

int main ()
{
int i ;
int a[20] ={0} ;
for (i=0 ;a[i] != '\n' ; ++i)
scanf("%d" ,a) ;
return 0 ;
}
为什么这个程序里用‘\n’ 不能判断输入结束?

1、新建一个scanf项目。

2、添加一个scanf.cpp文件,如图所示。

3、包含stdio.h头文件,如图所示。

4、输入main函数

5、使用scanf函数接受用户输入的字符,如图所示。

6、运行程序,查看效果。


注意事项:

(在有一些实现中,printf函数与scanf函数在使用时可以不使用预编译命令#include <stdio.h>。)它是格式输入函数,即按用户指定的格式从键盘上把数据输入到指定的变量之中。

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-09-16
1、可以使用EOF来判断输入是否结束。scanf()函数是有返回值的,成功读入的数据个数其返回值,没有数据被读入,返回0,如果发生错误,则返回EOF。scanf()函数是读入函数的之一,还有用于数据文件读入的fscanf()等。fscanf()在遇到文件结束符时返回EOF。
2、例如:while(scanf("%d",&n)!=EOF);
第2个回答  2015-03-30
scanf函数在读入错误时会返回-1,根据这个可以判断结束。
while(scanf("%d",&a)!=-1)
{
;
}本回答被网友采纳
相似回答