C语言编写程序,给定一个n×n的方阵(1⩽n⩽10),本题要求计算该方阵四个边上元素之和。 要求: 编写函数按照题意计算元素之和。 函数接口定义: int sumMatrix(int (*a)[N],int n); 指针a指向了一个10×10的方阵,n为a指向的矩阵的阶数 裁判测试程序样例: #include<stdio.h> #define N 10 void createMatrix(int (*a)[N],int n) { for(int i=0; i<n; i++) { for(int j=0; j<n; j++) { scanf("%d",&a[i][j]); } } } /* 请在这里填写答案 */ int main() { int a[N][N]; createMatrix(a); printf("%d\n",sumMatrix(a)); return 0; } 输入格式: 在第一行给出方阵的阶数n,随后给出n行数,每行n个数,表示方阵中的元素。 输出格式: 输出求和结果 输入样例: 10 1 2 3 4 5 6 7 8 9 10 1 2 3 4 5 6 7 8 9 10 1 2 3 4 5 6 7 8 9 10 1 2 3 4 5 6 7 8 9 10 1 2 3 4 5 6 7 8 9 10 1 2 3 4 5 6 7 8 9 10 1 2 3 4 5 6 7 8 9 10 1 2 3 4 5 6 7 8 9 10 1 2 3 4 5 6 7 8 9 10 1 2 3 4 5 6 7 8 9 10 输出样例: 198
时间: 2023-12-30 14:03:43 浏览: 33
n阶行列式计算 C语言 实现
4星 · 用户满意度95%
根据题目要求,我们只需要计算该方阵四个边上元素之和即可。具体实现如下:
```
#define N 10
int sumMatrix(int (*a)[N], int n) {
int sum = 0;
for (int i = 0; i < n; i++) {
sum += a[0][i] + a[n - 1][i] + a[i][0] + a[i][n - 1];
}
// 如果 n 是奇数,则需要减去重复计算的中心元素
if (n % 2 == 1) {
sum -= a[n / 2][n / 2];
}
return sum;
}
```
完整代码如下:
阅读全文