C语言输入多组测试数据 ,用什么语句可以判断输入数据的结束

C语言输入多组测试数据,用什么语句可以判断输入数据的结束while(scanf("%d",&a)!=EOF)这句话对吗... C语言输入多组测试数据 ,用什么语句可以判断输入数据的结束while(scanf("%d",&a)!=EOF) 这句话对吗 展开
 我来答
匿名用户
推荐于2017-11-26
展开全部
while(scanf("%d",&a)!=EOF) 是对的,但这个是对评判你程序的系统来说的 EOF是end of file 的意思。如果只是你个人想输入多组数据,那你可以设定一个条件 例如输入-1时 数据输入结束while(scanf("%d",&a)){ if(a==-1) break;
}
kaixingui2012
推荐于2018-02-27 · TA获得超过4.2万个赞
知道大有可为答主
回答量:1.4万
采纳率:81%
帮助的人:6420万
展开全部

输入多组测试数据,判断输入结束的方式与题目要求有关。

常见方式有:

  • 先输入测试组数,再读数据

    int tn,n;

    scanf("%d", &tn);

    while( tn-- ) { scanf("%d", &tn);....} //按tn次数循环读数

  • 不确定测试组数,以规定数据结束,如,-1或负数

    while( scanf("%d", &n),  n>=0 ) { //只要n不是负数,就会循环

    }

  • 不确定测试组数,以EOF判定结束,

    while( scanf("%d", &n)!=EOF ) { //当收到EOF信息时,结束

    }

    这种情况一般是测试库用文件来作为数据输入源,如果以键盘为输入源,则要在空行位置按ctrl+z达到结束效果。

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2013-12-16
展开全部
这个可以自己设定的,不过scanf回车就结束了,你可以用自己设定的字符来结束,用gechar()这个函数比较好,gechar()可以接受任何的字符,而scanf是接受不了回车键的。。。希望对你有帮助!!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2013-12-16
展开全部
楼上说的很正确,其实还有另一种方法,不过是麻烦了点,可以通过一个循环语句控制输入多组测试数据。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式