解题思路:创建一个二维数组。
注意事项:首先要注意矩阵为偶数和奇数输出的答案是不一样的,因此要分情况讨论。矩阵为偶数时,直接输出,两条对角线相加,矩阵为奇数时,两条对角线相交的那个位置的值会重复加多一次,因此要减掉那一次重复的。
参考代码:
#include<iostream>
using namespace std;
int main(){
int n=0,i,j;
int a[100][100]={0};
int sum=0,sn=0;
cin>>n;
for(i=0;i<n;i++){
for(j=0;j<n;j++){
cin>>a[i][j];
}
}
for(int i=0;i<n;i++){
for(j=0;j<n;j++){
if(n%2==0){
if((i==j)||(i+j==n-1)){
sum+=a[i][j];
}
}else{
if(i==j){
sum+=a[i][j];
}else if((i+j==n-1)&&((i*2+1)!=n)){
sum+=a[i][j];
}
}
}
}
cout<<sum;
return 0;
}
0.0分
0 人评分
2005年春浙江省计算机等级考试二级C 编程题(2) (C语言代码)浏览:647 |
哥德巴赫曾猜测 (C语言代码)浏览:2317 |
【明明的随机数】 (C语言代码)浏览:785 |
简单的a+b (C语言代码)浏览:580 |
母牛的故事 (C语言代码)浏览:451 |
简单的a+b (C语言代码)浏览:547 |
C语言程序设计教程(第三版)课后习题5.7 (C语言代码)浏览:506 |
C语言程序设计教程(第三版)课后习题10.7 (C语言代码)浏览:4362 |
用筛法求之N内的素数。 (C语言代码)浏览:577 |
校门外的树 (C语言代码)浏览:580 |