这个程序该怎么编写2

程序输出结果错误,所有结果都等于printf("无人获胜\n"); 个人感觉可能是if( num0f0 = num0fx = 2)出的问题,尝试用switch-case,break解决但似乎没大用

这是代码内容:

#include <stdio.h>

int main()
{
const int size =3;
int board[size][size];
int i,j;
int num0fx;
int num0f0;
int result;
int type;

//读入矩阵

for (i=0; i<size; i ++){
    for(j=0; j<size; j ++){
        scanf("%d", &board[i][j]);
    }
} 
//检查行

switch(type){
case 1:
for(i=0; i<size && result == -1; i ++){
num0fx = num0f0 =0;
for(j = 0; j<size; j ++){
if(board[i][j] == 1){
num0fx ++;
}else{
num0f0 ++;
}
}
if (num0f0 == size){
result = 0;
}else if(num0fx == size){
result = 1;
}
} break;

// 检查列
case 2 :
if (result == -1){
    for(j = 0; j<size && result == -1; j ++){
        num0f0 = num0fx = 0;
        for(i = 0; i<size ;i ++){
            if (board[i][j] == 1){
                num0fx ++;
            }else {
                num0f0 ++;
            }
        }
        if(num0f0 == size){
            result = 0;
        }else if(num0fx == size){
            result = 1;
        }
    }
}break;


//检查对角线

num0f0 = num0fx =0;
for (i = 0; i<size; i++){
    if(board[i][i] == 1){
        num0fx ++;
    }else{
        num0f0 ++;
    }
    if( num0f0 == size){
        result = 0;
    }else if(num0fx = size){
        result = 1;
    }
} 


num0f0 = num0fx =0;
for(i=0 ;i<size; i ++){
    if (board[i][size-i-1] == 1){
        num0fx ++;
    }else{
        num0f0 ++;
    }
        if( num0f0 = num0fx = 2){
        result = -1;
    }
}

}

if(result == 0){
    printf("O一方获胜\n");
}else if(result == 1){
    printf("X一方获胜\n");
}else if(result == -1){
    printf("无人获胜\n"); 
}

printf("result=%d\n", result); //测试输出数据为1还是0

return 0;

}

img

result type 两个参数没有初始化,也没赋初值?