#include<stdio.h>
int main()
{
const int size=3;
int broad[size][size];
int x,o;
int i,j;
int result=-1;
for(i=0;i<size;i++){
for(j=0;j<size;j++){
scanf("%d",&broad[i][j]);
}
}
//判断行
for(i=0;result==-1&&i<size;i++){
x=o=0;
for(j=0;j<size;j++){
if(broad[i][j]==1){
x++;
}
else o++;
if(x==size)result=1;
else if(o==size) result=0;
}
}
//判断列
if(result==-1){
for(j=0;j<size;j++){
x=o=0;
for(i=0;i<size;i++){
if(broad[i][j]==1)
x++;
else o++;
if(x==size) result=1;
else if(o==size) result=0;
}
}
}
//判断主对角线
if(result==-1){
x=o=0;
for(i=0;i<size;i++){
if(broad[i][i]==1) x++;
else o++;
}
if(x==size) result=1;
else if(o==size) result=0;
}
//判断次对角线
if(result==-1){
x=o=0;
for(i=0;i<size;i++){
if(broad[i][size-i-1]==1)x++;
else o++;
}
if(x==size) result=1;
else if(o==size) result=0;
}
printf("%d",result);
return 0;
}
易错:x=o=0的位置;
result的赋值位置;
每次先判断result;