设计算法编写程序,定义,输入(或赋随机数)10行10列二维数组,按行列方式输出,求其两条对角线的元素之和c语言
时间: 2024-03-21 11:40:30 浏览: 65
好的,以下是实现该算法的 C 语言代码:
```c
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define ROWS 10
#define COLS 10
int main() {
int arr[ROWS][COLS];
int i, j, sum1 = 0, sum2 = 0;
// 对数组进行初始化,这里使用随机数
srand((unsigned)time(NULL)); // 设置随机数种子
for (i = 0; i < ROWS; i++) {
for (j = 0; j < COLS; j++) {
arr[i][j] = rand() % 100; // 生成 0-99 之间的随机数
}
}
// 输出数组
printf("数组元素:\n");
for (i = 0; i < ROWS; i++) {
for (j = 0; j < COLS; j++) {
printf("%3d ", arr[i][j]);
}
printf("\n");
}
// 计算两条对角线的元素之和
for (i = 0; i < ROWS; i++) {
sum1 += arr[i][i]; // 左上到右下的对角线元素之和
sum2 += arr[i][COLS - i - 1]; // 右上到左下的对角线元素之和
}
// 输出结果
printf("左上到右下的对角线元素之和为:%d\n", sum1);
printf("右上到左下的对角线元素之和为:%d\n", sum2);
return 0;
}
```
程序运行时会先生成一个 10 行 10 列的二维数组,并输出数组元素。接着计算数组的两条对角线的元素之和,并输出结果。
阅读全文