【发布时间】:2013-03-23 19:50:16
【问题描述】:
例如,如果我想编写一个代码来平均用户输入的未指定数量的数字,我怎样才能使用户可以确定数字的数量? IE。如果用户只想平均三个数字,他一次输入一个,然后输入一些东西来表示就是这样。
我写了类似的东西
while(i!=EOF){
printf("type in a number: \n");
scanf("%f",&i);
array[x]=i;
x++;
}
“然后是一些代码来平均数组中的数字”。
这个想法是,如果用户想要表示他已完成输入数字,则他输入 EOF,然后 while 循环将停止,但这不起作用。当我在终端输入 EOF 时,它只是无限期地写“输入数字:”。
【问题讨论】:
-
好的,所以我意识到在终端输入 -1 可以完成我想做的事情,但我想通过输入不是数字的东西来做到这一点。我该怎么做?
-
您应该将输入读入一个字符数组(字符串)并解析结果。如果它的数字继续,如果它不测试终止文本
-
按
ctrl+D?顺便说一句,您必须检查scanf的返回值!并阅读man scanf。