📅  最后修改于: 2023-12-03 14:48:48.136000             🧑  作者: Mango
在这个题目中,我们需要编写一个 C 程序来计算上下三角形元素之和。
程序需要从标准输入中读取一个整数 n,表示上下三角形的行数。然后,程序需要读取输入的上下三角形,计算出它们的元素之和,并将结果输出到标准输出中。
我们可以使用两个二维数组来存储输入的上下三角形。读取输入时,我们可以根据行数 n 来判断当前行数属于上三角形还是下三角形,然后将输入写入对应的二维数组中。
计算元素之和时,我们需要遍历上下三角形中所有的元素,并将它们相应地相加。
最后,我们将结果输出到标准输出中。
下面是程序的代码:
#include <stdio.h>
int main() {
int n, i, j;
int upper_sum = 0, lower_sum = 0;
int upper_tri[100][100], lower_tri[100][100];
scanf("%d", &n);
// 读取上三角形
for (i = 0; i < n; i++) {
for (j = i; j < n; j++) {
scanf("%d", &upper_tri[i][j]);
upper_sum += upper_tri[i][j];
}
}
// 读取下三角形
for (i = 0; i < n; i++) {
for (j = 0; j <= i; j++) {
scanf("%d", &lower_tri[i][j]);
lower_sum += lower_tri[i][j];
}
}
// 计算上下三角形元素之和并输出
printf("上三角形元素之和:%d\n", upper_sum);
printf("下三角形元素之和:%d\n", lower_sum);
return 0;
}
我们可以使用以下输入来测试我们的程序:
3
1 2 3
0 4 5
0 0 6
运行上面的程序,输出如下:
上三角形元素之和:21
下三角形元素之和:16
可以看出,程序正确地计算了上下三角形的元素之和。