解题思路:
我这个应该是最简单,不需要太多知识点就能解答问题的方法了,希望能给初学者解惑!
1、首先是需要输入一个值,如n的值,它表示了将有n个会进行相加。所以需要一个scanf()函数用来输入n的值;
2、还需输入n个数字,所以还需要scanf()函数来输入n个数字,同时还要求这n个数字的和是多少,因为n是未知的,所以不知道要写多少个scanf()函数,所以只能使用循环函数,来输入n个数字了,同时求n数字的和,最好用的就是循环函数,所以可以知道,这个里面至少使用了一个循环函数,同时用来确定n个数字的输入,以及用来求和的;
3、又因为可以重复输入多组数据进行求和,所以至少还有一个函数是用来确保能多组输入和求值的。这里建议使用while(1)函数,恒为真,一直循环下去。
4、当n输入为0的时候,就终止求和程序,同时不输出任意数字。这里最好是遇到n=0的时候,直接break,退出大循环。
注意事项:
1、n个数字求和时,每组的求和值得初始化值都要赋值为0,免得出现累加的错误;
2、注意题目要求当n=0时,不做任何输出,并终止程序的输入,切记是不做任何输出,所以就要保证n=0时,不会执行printf()函数;
参考代码:
#include<stdio.h> int main() { int a,i,sum,n; while(1) { sum=0; scanf("%d",&n); if(n!=0) { for(i=n;i>0;i--) { scanf("%d",&a); sum=sum+a; } printf("%d\n",sum); } else break; } return 0; }
0.0分
8 人评分
拆分条件 #include<stdio.h> int main() { int N,a[100],sum=0; while(scanf("%d",&N)&&(N!=0)) { for(int i=1;i<=N;i++) { scanf("%d",&a[i]); sum+=a[i]; } printf("%d\n",sum); sum=0; } return 0; }
#include<stdio.h> int main() { int a,i,sum,n,c[100],p=0; while(1) { sum=0; scanf("%d",&n); if(n!=0) { for(i=n;i>0;i--) { scanf("%d",&a); sum=sum+a; } c[p]=sum; p++; } else break; } for(i=0;i<p;i++) printf("%d\n",c[i]); return 0; }
liuchengbo 2020-01-07 20:48:24 |
不用谢
ASCII帮了大忙浏览:797 |
C语言程序设计教程(第三版)课后习题3.7 (C语言代码)浏览:467 |
三角形 (C++代码)递推浏览:825 |
1009题解浏览:802 |
Minesweeper (C语言描述,蓝桥杯)浏览:1176 |
2004年秋浙江省计算机等级考试二级C 编程题(1) (C语言代码)浏览:676 |
1126题解浏览:649 |
钟神赛车 (C语言代码)浏览:665 |
C语言训练-大、小写问题 (C语言代码)浏览:719 |
C语言程序设计教程(第三版)课后习题5.4 (C语言代码)浏览:501 |