问题描述
九宫格。输入1-9这9个数字的一种任意排序,构成3*3二维数组。如果每行、每列以及对角线之和都相等,打印1。否则打印0。
样例输出
与上面的样例输入对应的输出。
例:4 9 2
3 5 7
8 1 6
数据规模和约定
输入1-9这9个数字的一种任意排序。
#include <stdio.h>
/*输入1-9这9个数字的一种任意排序。*/
int main(void){
int a[3][3];
int i,j;
printf("请输入数组:");
for(i=0;i<3;i++){
for(j=0;j<3;j++){
scanf("%d",&a[i][j]);
}
}
for(i=0;i<3;i++){
for(j=0;j<3;j++){
printf("%5d",a[i][j]);
}
printf("\n");
}
int s1=0,s2=0,s3=0,s4=0,s5=0,s6=0,s7=0,s8=0;
s1+=a[0][0]+a[0][1]+a[0][2];
s2+=a[1][0]+a[1][1]+a[1][2];
s3+=a[2][0]+a[2][1]+a[2][2];
s4+=a[0][0]+a[1][0]+a[2][0];
s5+=a[0][1]+a[1][1]+a[2][1];
s6+=a[0][2]+a[1][2]+a[2][2];
s7+=a[0][0]+a[1][1]+a[2][2];
s8+=a[0][2]+a[1][1]+a[2][0];
printf("输出结果");
if(s1==s2&&s1==s3&&s1==s4&&s1==s5&&s1==s6&&s1==s7&&s1==s8)
printf("1\n");
else
printf("0\n");
}