C语言:编写程序求任意方阵每行、每列、两对角线一元素之和。

来源:百度知道 编辑:UC知道 时间:2024/09/23 11:55:24
编写程序求任意方阵每行、每列、两对角线一元素之和。

先将方法告诉你:
a[n][n]
这是一个n*n的方阵

for(int i=0;i<n;i++)
s+=a[x][i];
s为第x行的和;

for(int i=0;i<n;i++)
s+=a[i][x];
s为第x列的和;

for(int j=0;j<n;j++)
s+=a[j][j];
s为对角线的和;

for(int j=0;j<n;j++)
s+=a[j][n-1-j];
s为次对角线的和;

下面是代码:
// #include"stdio.h"
// #include"stdlib.h"
// #include"time.h"
// #include"conio.h"

#include<stdio.h>
#include<malloc.h>
#include<conio.h>

int main()
{
int n,i,j,s;
int **a;

printf("请输入n值: ");
scanf("%d",&n);
fflush(stdin);

a=(int **)malloc(n*n*sizeof(int*));
for(i=0;i<n;i++)
{
a[i]=(int *)malloc(n*sizeof(int));
}

printf("请输入矩阵成员值: \n");
for(i=0;i<n;i++)
{
printf("第%d行: \n",i);