解题思路:
循环输入数据,每一次输入就进行判断,不断求和即可。
由于scanf是有返回值的,且返回值为int型,特别的此处用法导致只有scanf返回-1,循环才会结束,也就是要返回EOF,而-1 补码的取反后全为0,while终止循环。
while (~scanf("%d%d",&n,&m))等效于 while (scanf("%d%d",&n,&m)!=EOF)
注意事项:
不是以\n结束!
不是以\n结束!
不是以\n结束!
参考代码:
#include"stdio.h"
void main()
{
int sum=0,n;
while(~scanf("%d",&n))//以EOF结尾,不是以\n结尾
{ //以下分别对应条件做求和即可
if(n<151)sum+=30;
else if(n<261)sum+=100;
else sum+=500;
}
printf("%d\n",sum);
}
0.0分
0 人评分
C语言程序设计教程(第三版)课后习题7.2 (C语言代码)浏览:546 |
C语言程序设计教程(第三版)课后习题9.4 (C语言代码)浏览:760 |
2006年春浙江省计算机等级考试二级C 编程题(2) (C语言代码)浏览:502 |
C语言程序设计教程(第三版)课后习题6.3 (C语言代码)浏览:1000 |
wu-淘淘的名单 (C++代码)浏览:1532 |
C语言程序设计教程(第三版)课后习题6.8 (C++代码)浏览:614 |
蛇行矩阵 (C语言代码)浏览:606 |
1009题解浏览:802 |
C语言程序设计教程(第三版)课后习题4.9 (C语言代码)浏览:592 |
核桃的数量 (C语言代码)浏览:726 |