用C语求一个N*N矩形对角线元素和sum的值
时间: 2023-05-30 17:03:23 浏览: 85
以下是一个求N*N矩形对角线元素和sum的C语言程序:
```c
#include <stdio.h>
int main()
{
int n, i, j, sum = 0;
printf("请输入矩阵的大小:");
scanf("%d", &n);
int matrix[n][n];
printf("请输入矩阵的元素:\n");
for(i = 0; i < n; i++)
{
for(j = 0; j < n; j++)
{
scanf("%d", &matrix[i][j]);
if(i == j || i + j == n - 1) // 判断是否为对角线元素
{
sum += matrix[i][j]; // 对角线元素求和
}
}
}
printf("对角线元素的和为:%d\n", sum);
return 0;
}
```
程序说明:
1. 首先输入矩阵的大小n;
2. 然后定义一个n*n的二维数组matrix;
3. 接着输入矩阵的元素,并判断是否为对角线元素,如果是则累加到sum中;
4. 最后输出对角线元素的和sum。
相关问题
求一个N*N矩形对角线元素和sum的值
对于一个N*N矩阵,其对角线元素和sum的值为:
sum = 0
for i in range(N):
sum += matrix[i][i] # 左上角到右下角的对角线元素
sum += matrix[i][N-i-1] # 右上角到左下角的对角线元素
其中,matrix为N*N的矩阵,i为行和列的索引,N-i-1为第i行倒序的列索引。这样,就能够求出矩阵中所有对角线元素的和了。
求一个3*3矩形对角线元素之和C语言
在C语言中,求一个3x3矩阵对角线元素之和的过程很简单,你可以创建一个3x3的二维数组,然后分别累加主对角线(从左上到右下)和副对角线(从右上到左下)的元素。下面是一个简单的示例:
```c
#include <stdio.h>
int main() {
int matrix[3][3] = { {1, 2, 3}, {4, 5, 6}, {7, 8, 9} }; // 初始化一个3x3矩阵
int sum_main = 0;
int sum_sub = 0;
// 计算主对角线元素之和
for (int i = 0; i < 3; i++) {
sum_main += matrix[i][i];
}
// 计算副对角线元素之和
for (int i = 0; i < 3; i++) {
sum_sub += matrix[i][2-i]; // 注意,这里的2-i是为了得到从右上到左下的元素索引
}
printf("主对角线元素之和: %d\n", sum_main);
printf("副对角线元素之和: %d\n", sum_sub);
return 0;
}
```
当你运行这个程序,它会打印出主对角线和副对角线元素的总和。
阅读全文