用c语言编写一个函数,求N阶二维矩阵的主对角线元素之和。
时间: 2024-01-08 07:53:47 浏览: 102
以下是用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 arr[100][100], n;
printf("Enter the size of matrix: ");
scanf("%d", &n);
// Taking input from user
printf("Enter the elements of matrix:\n");
for (int i = 0; i < n; i++) {
for (int j = 0; j < n; j++) {
scanf("%d", &arr[i][j]);
}
}
// Printing the matrix
printf("The matrix you entered is:\n");
for (int i = 0; i < n; i++) {
for (int j = 0; j < n; j++) {
printf("%d ", arr[i][j]);
}
printf("\n");
}
// Calculating the sum of main diagonal elements
int sum = sumOfMainDiagonal(arr, n);
// Printing the sum of main diagonal elements
printf("The sum of main diagonal elements is: %d", sum);
return 0;
}
```
在这个函数中,我们首先定义了 `sumOfMainDiagonal` 函数,该函数的参数是二维数组和矩阵的大小 N。该函数使用一个循环来遍历矩阵的主对角线并计算所有元素之和。最后,该函数返回总和。
然后我们在 `main` 函数中使用 `scanf` 函数从用户获取矩阵的大小和元素。然后,我们使用另一个循环来打印用户输入的矩阵。接下来,我们将这个数组传递给 `sumOfMainDiagonal` 函数,并打印出返回的总和。
阅读全文