我对C语言很陌生,之前用的是Java,所以有些东西不太熟悉... 我想读取无限数量的整数直到遇到换行符。我知道换行符是/n,我已经有了一段代码,可以读取输入的整数,但是如果有换行符它就不会停止。
#include <stdio.h>
int main() {
int i, numberOfNumbs=0,total=0,value, valsRead;
float average;
valsRead = scanf("%d",&value);
while(valsRead>0)
{
numberOfNumbs++;
total +=value;
printf("Read %d\n", value);
valsRead = scanf("%d",&value);
}
average=(float)total/(float)numberOfNumbs;
printf("You read %d values. Average = %f.",numberOfNumbs, average);
return (0);
}
输入应该像这样: 23 4 114 2 34 3224 3 2 ⁄n 提前感谢。
fgets()
不是只用于文件吗?我想从终端读取... 如果我错了,对不起 :O - bli77stdin
是一个文件或流。它是默认的控制台输入,并已经“打开”。 - Weather Vane