C++ 计算整数之和:完整代码及解题思路
C++ 计算整数之和:完整代码及解题思路
问题描述: 输入包含多组测试用例。每组测试用例包含一个整数 N,然后在同一行中给出 N 个整数。以 0 开始的测试用例终止输入,此测试用例不进行处理。
输出: 对于每组输入整数,您应该在一行中输出它们的总和,并且每行输入对应一行输出。
解题思路: 每组数据都有多个整数,需要将它们相加求和。因为每个数据组都是独立的,所以可以用一个 while 循环来实现多组数据输入,用一个内层循环来对每组数据进行求和。
注意:
- 每组数据的第一个整数表示该组数据中后面要输入的整数个数,需要将其读取并保存到变量 n 中。
- 每组数据输入完毕后需要输出一行空行。
参考代码:
#include <iostream>
using namespace std;
int main() {
int n, sum;
while (true) {
cin >> n;
if (n == 0) break;
sum = 0;
for (int i = 0; i < n; i++) {
int num;
cin >> num;
sum += num;
}
cout << sum << endl << endl;
}
return 0;
}
代码解释:
#include <iostream>: 引入标准输入输出流库。using namespace std;: 使用标准命名空间。int main(): 程序的主函数。int n, sum;: 声明两个整型变量 n 和 sum,分别用于存储输入的整数个数和每组数据的总和。while (true) { ... }: 使用一个无限循环来处理多组数据。cin >> n;: 读取每组数据的第一个整数,即整数个数,并存储到 n 中。if (n == 0) break;: 如果读取到 0,则跳出循环,结束程序。sum = 0;: 初始化 sum 为 0,用于累加每组数据的整数。for (int i = 0; i < n; i++) { ... }: 使用一个 for 循环读取每组数据中的所有整数。int num;: 声明一个整型变量 num,用于存储每次读取的整数。cin >> num;: 读取每个整数,并存储到 num 中。sum += num;: 将读取的整数加到 sum 中。cout << sum << endl << endl;: 输出每组数据的总和,并在输出后换行两次。return 0;: 程序正常退出。
运行结果: 当输入 3 1 2 3 回车 4 5 6 7 8 回车 0 回车 时,程序会输出:
6
26
总结: 本代码利用了 while 和 for 循环来实现多组数据的输入和处理,并通过变量 sum 累加每组数据的整数,最终输出每组数据的总和。该程序结构清晰,易于理解,适合初学者学习和练习。
原文地址: https://www.cveoy.top/t/topic/oMqA 著作权归作者所有。请勿转载和采集!