这个是题目:
Problem Description
Your task is to Calculate the sum of some integers.
Input
Input contains multiple test cases. Each test case contains a integer N, and then N integers follow in the same line. A test case starting with 0 terminates the input and this test case is not to be processed.
Output
For each group of input integers you should output their sum in one line, and with one line of output for each line in input.
Sample Input
4 1 2 3 4 5 1 2 3 4 5 0
Sample Output
10 15
Author
lcy
这个题目的意思就是前面输入一个数字n;假如输了5
后面就输入这n个数字;最后得出这五个数字的和(前面输了5);
后面就输入这n个数字;最后得出这五个数字的和(前面输了5);
代码;
#include<stdio.h>
int main()
{
int i,n,sum,a;
while(scanf("%d",&n))
{
if(n!=0)
{
sum=0;
for(i=0;i<n;i++)
{
scanf("%d",&a);
sum+=a;
}
printf("%d\n",sum );
}
else
break;
}
}
解释:
先是输入一个数字,代表后面将会输入几个数字;
如果输入的是0,那就break,如果不是零那就进入
加法循环;
while 输入一个数字
判断这个数字是否是0;if是0,则进入加法循环;
else则break
在if里面,开始分情况
定义加出来的值是sum
则 先给sum个0(初始值)
之后进入for循环(加法)
for(i=0;i<n;i++)
代表加了n个数字;
printf不能写在for循环里面,这个挺考验会不会用for;
如果输入的是0,那就break,如果不是零那就进入
加法循环;
while 输入一个数字
判断这个数字是否是0;if是0,则进入加法循环;
else则break
在if里面,开始分情况
定义加出来的值是sum
则 先给sum个0(初始值)
之后进入for循环(加法)
for(i=0;i<n;i++)
代表加了n个数字;
printf不能写在for循环里面,这个挺考验会不会用for;
如果写到for里面就会出现下面这个情况;
4 1 2 3 4
1
3
6
10
全加了一遍,每次加法都被写出来了。