C语言 XDOJ 上机题 二维数组矩阵对角线求和

C语言XDOJ 上机题 二维数组矩阵对角线求和

标题
数值求和

描述
输入整数N(N≤20),输入二维矩阵A[N] [N]各元素值,计算所有对角线元素的和,每一元素只加一次,输出结算结果。

时间限制
1
内存限制
10000
类别
1

输入说明
输入整形数据N和N×N矩阵各元素值,如2和矩阵元素A={1,2,3,4}。

输出说明
格式输出:输出计算结果。

输入样例
2
1 2
3 4

输出样例
10

提示
采用重循环结构实现计算过程,所有对角线元素只加一次。

#include<stdio.h>
int main()
{
     
	int n,j,i,s,s0;
	int a[n][n];
	scanf("%d",&n);
	for(i=0;i<n;i++){
     
		for(j=0;j<n;j++){
     
			scanf("%d",&a[i][j]);	
			}
		}
		for(i=0,j=0;i<n;i++,j++){
     
			if(n-1-i>i){
     
			s0=a[i][i]+a[i][n-1-i]+a[n-1-i][i]+a[n-1-i][n-1-i];
			s=s+s0;
		}
			if(n-1-i==i){
     
			s0=a[i][i];
			s=s+s0;
			}
			if(n-1-i<i){
     
			break;
			}
		}
		printf("%d",s);
	return 0;
}



你可能感兴趣的:(XDOJ,c语言,算法)