答案 0 :(得分:0)
您可以使用scanf
函数的返回值:它返回已读取的值的数量,当没有可用的输入时,它将返回-1
。
这是一个很好的起点:
int x;
while(scanf("%d", &x) == 1) {
// Code your solution here.
}
答案 1 :(得分:-1)
scanf()
的返回值在这里不够。例如," 3 5 a b 7"期望"输入无效"而不是" 8"。
#include <stdio.h>
int main(void)
{
int num, sum = 0;
while(scanf(" %d", &num) == 1)
sum += num;
if (getchar() == EOF)
printf("%d\n", sum);
else
puts("Invalid Input");
return 0;
}
答案 2 :(得分:-1)
#include<stdio.h>
int main()
{
int sum=0,a,d;
char f;
while(d=scanf("%d%c",&a,&f))
{
sum=a+sum;
if(f=='\n')
break;
}
if(d==2)
printf("%d\n",sum);
else
printf("Invalid Input\n");
return 0;
}