解题思路:i,j->a[i][j]
n=3
对角线1:0,0+1,1+2,2
对角线2:0,2+1,1+2,0
总和=对角线1+对角线2-1,1;
n=4
对角线1:0,0+1,1+2,2+3,3
对角线2:0,3+1,2+2,1+3,0
总和=对角线1+对角线2;
n=5
对角线1:0,0+1,1+2,2+3,3+4,4
对角线2:0,4+1,3+2,2+3,1+4,0
总和=对角线1+对角线2-2,2;
得出
if(i==j){
sum+=(a[i][j]+a[i][n-1-i]);
}
注意事项:
当n为奇数需减去中心点数一次
参考代码:
int main(){
int n,i,j,sum=0,p,q;
scanf("%d",&n);
int a[n][n];
for(i=0;i<n;i++){
for(j=0;j<n;j++){
scanf("%d",&a[i][j]);
}
}
for(i=0;i<n;i++){
for(j=0;j<n;j++){
if(i==j){
sum+=(a[i][j]+a[i][n-1-i]);
printf("%d,%d\n",a[i][j],a[i][n-1-i]);
}
}
}
p=n%2;
q=n/2;
if(p!=0){
sum=sum-a[q][q];
}
printf("%d",sum);
}
0.0分
0 人评分
C语言程序设计教程(第三版)课后习题10.1 (C语言代码)浏览:1450 |
C语言考试练习题_排列 (C++代码)浏览:639 |
C二级辅导-同因查找 (C语言代码)浏览:587 |
C语言程序设计教程(第三版)课后习题10.5 (C语言代码)浏览:1452 |
最长单词 (C语言代码)浏览:1389 |
2003年秋浙江省计算机等级考试二级C 编程题(2) (C语言代码)浏览:751 |
C语言程序设计教程(第三版)课后习题1.5 (C++代码)浏览:1095 |
C语言程序设计教程(第三版)课后习题5.4 (C语言代码)浏览:527 |
C语言程序设计教程(第三版)课后习题8.6 (C语言代码)浏览:601 |
【蟠桃记】 (C语言代码)浏览:667 |