C语言从键盘输入一个M×M的矩阵,分别求该矩阵主对角线上的元素之和、以及副对角线上的元素之和。要求M的值从键盘输入,且M的值小于10。
时间: 2024-05-18 08:18:14 浏览: 64
好的,以下是使用C语言实现该功能的代码示例:
```
#include <stdio.h>
int main() {
int m, sum1 = 0, sum2 = 0;
printf("请输入矩阵的大小M:");
scanf("%d", &m);
int matrix[m][m];
printf("请输入矩阵的元素:\n");
for (int i = 0; i < m; i++) {
for (int j = 0; j < m; j++) {
scanf("%d", &matrix[i][j]);
if (i == j) { // 如果是主对角线上的元素
sum1 += matrix[i][j];
}
if (i + j == m - 1) { // 如果是副对角线上的元素
sum2 += matrix[i][j];
}
}
}
printf("主对角线上的元素之和为:%d\n", sum1);
printf("副对角线上的元素之和为:%d\n", sum2);
return 0;
}
```
这段代码跟之前的C++代码非常相似,只是使用了C语言的输入输出函数 `scanf` 和 `printf`。输入矩阵的过程同样使用了双重循环,然后通过两个 `if` 语句来计算主对角线和副对角线上的元素之和。最后,使用 `printf` 函数输出结果即可。
希望这个代码示例对您有所帮助!
阅读全文