求n阶矩阵主对角元素之和的函数
时间: 2023-05-13 22:06:07 浏览: 202
以下是一个求n阶矩阵主对角元素之和的函数:
```python
def diagonal_sum(matrix):
n = len(matrix)
diagonal_sum = 0
for i in range(n):
diagonal_sum += matrix[i][i]
return diagonal_sum
```
这个函数接受一个n阶矩阵作为参数,然后通过遍历矩阵的主对角线上的元素,将它们的值相加得到主对角元素之和。
相关问题
设计一个求n阶矩阵主对角元素之和的函数
可以使用以下代码实现:
```
#include <stdio.h>
int main() {
int n, i, j, sum = ;
printf("请输入矩阵的阶数n:");
scanf("%d", &n);
int matrix[n][n];
printf("请输入矩阵的元素:\n");
for (i = ; i < n; i++) {
for (j = ; j < n; j++) {
scanf("%d", &matrix[i][j]);
if (i == j) {
sum += matrix[i][j];
}
}
}
printf("矩阵主对角元素之和为:%d\n", sum);
return ;
}
```
该程序首先要求用户输入矩阵的阶数n,然后通过嵌套循环读入矩阵的元素,并计算主对角元素之和。最后输出结果。
C语言编写一个函数,求N阶矩阵的主对角线元素之和
可以编写一个函数,使用二维数组存储矩阵,然后遍历主对角线元素并求和。具体实现如下:
```c
#include <stdio.h>
int sumOfMainDiagonal(int arr[][100], int n) {
int sum = 0;
for (int i = 0; i < n; i++) {
sum += arr[i][i];
}
return sum;
}
int main() {
int n;
printf("请输入矩阵的阶数:");
scanf("%d", &n);
int arr[100][100];
printf("请输入矩阵的元素:\n");
for (int i = 0; i < n; i++) {
for (int j = 0; j < n; j++) {
scanf("%d", &arr[i][j]);
}
}
int sum = sumOfMainDiagonal(arr, n);
printf("主对角线元素之和为:%d\n", sum);
return 0;
}
```
在该程序中,`sumOfMainDiagonal()` 函数接收一个二维数组 `arr` 和矩阵阶数 `n`,遍历主对角线元素并求和,返回结果。在 `main()` 函数中,首先从用户输入矩阵阶数和元素,然后调用 `sumOfMainDiagonal()` 函数计算主对角线元素之和并输出结果。