编写程序,把下面的数据输入一个二维数组中。 15 32 78 13 12 17 88 78 21 25 22 56 12 32 36 25 (1)输出矩阵两个对角线上的数 c语言编写
时间: 2024-11-12 11:31:38 浏览: 9
java代码-定义一个一维数组,求出数组的最大值,最小值,平均值
在C语言中,你可以使用结构化数组或者动态内存分配来创建一个二维数组,并填充给定的数据。这里是一个简单的示例,如何读取数据并存储到二维数组中,然后输出两个对角线上的数值:
```c
#include <stdio.h>
#define ROWS 4
#define COLS 4
// 创建一个二维数组
int matrix[ROWS][COLS];
void input_data() {
int i, j;
for (i = 0; i < ROWS; i++) {
for (j = 0; j < COLS; j++) {
printf("请输入第 %d 行,第 %d 列的值: ", i + 1, j + 1);
scanf("%d", &matrix[i][j]);
}
}
}
void print_diagonal() {
// 输出主对角线
printf("主对角线上数值:");
for (int i = 0; i < ROWS; i++) {
if (i < COLS) {
printf("%d ", matrix[i][i]);
}
}
// 输出副对角线(如果行数和列数相等)
if (ROWS == COLS) {
printf("\n副对角线上数值:");
for (int i = ROWS - 1; i >= 0; i--) {
printf("%d ", matrix[i][i]);
}
}
}
int main() {
input_data();
print_diagonal();
return 0;
}
```
在这个程序中,我们首先定义了一个大小为4x4的二维数组`matrix`,然后通过两层循环从用户那里获取输入并存储。接着,我们定义了`print_diagonal`函数来打印主对角线(从左上到右下)和副对角线(当矩阵是方阵时,即行数和列数相等)。最后,在`main`函数中调用这两个功能。
当你运行这个程序并按照提示输入数据后,它会显示两条对角线上的数值。
阅读全文