题目描述
Your task is to calculate the sum of some integers.
输入格式
Input contains an integer N in the first line, and then N lines follow. Each line starts with a integer M, and then M integers follow in the same line.
输出格式
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.
样例输入
2 4 1 2 3 4 5 1 2 3 4 5
样例输出
10 15
代码解析
-
包含标准输入输出库:
#include <stdio.h>
这一行代码是预处理指令,它告诉编译器在实际编译之前包含标准输入输出库(stdio.h)。这个库提供了进行输入输出操作的功能,比如printf
和scanf
函数。 -
定义主函数:
int main(void)
是C程序的入口点,void
表示这个函数不接受任何参数。 -
定义变量:
int n
:用于存储将要输入的序列数量。int m
:用于存储当前序列中的整数数量。int input_m
:用于存储当前读取的整数。int sum
:用于累加当前序列中所有整数的和,初始化为0。
-
读取序列数量:
scanf("%d", &n);
这个函数调用用于从标准输入读取一个整数n
,代表将要输入的序列数量。 -
处理每个序列:
- 使用一个
while
循环,条件是n
不为0。这意味着,只要还有序列未处理,循环就会继续执行。 - 在每次循环的开始,使用
scanf
函数读取下一个序列的整数数量m
。
- 使用一个
-
计算当前序列的和:
- 使用另一个
while
循环,条件是m
不为0。这意味着,只要序列中还有整数未读取,循环就会继续执行。 - 在内部循环中,使用
scanf
函数读取序列中的下一个整数input_m
,并将其累加到sum
变量中。 - 每次读取一个整数后,
m
减1,直到m
为0,表示序列中的所有整数都已读取。
- 使用另一个
-
输出序列的和:
printf("%d\n", sum);
这个函数调用用于输出当前序列的所有整数的总和。 -
减少剩余序列数量:
n--;
这个操作将剩余的序列数量n
减1。 -
函数返回:
return 0;
表示main
函数执行成功并返回0。在C语言中,main
函数的返回值通常用于表示程序的退出状态,其中0表示成功。
源代码
#include <stdio.h>
int main(void)
{
int n;
int m;
int input_m;
int sum;
scanf("%d", &n);
while (n)
{
scanf("%d", &m);
sum = 0;
while (m)
{
scanf("%d", &input_m);
sum += input_m;
m--;
}
printf("%d\n", sum);
n--;
}
return 0;
}