if(puzzle[i][j] >= '0' && puzzle[i][j] <= '8' && puzzle[i][j] = '.')
我有那个代码,当我编译它时,它会得到Lvalue所需的错误。救命。谢谢!
这是完整的代码。我要做的是用指南检查用户的输入:
1)输入应为0到8和'。'
2)在桌子的角落(因为它是一个2d阵列,它应该小于3.
int main()
{
char puzzle[7][7];
int i;
int j;
printf("Enter your Tentaizu Puzzle:\n");
for(i = 0; i < 7; i++){
for(j = 0; j <7; j++){
scanf("%s", &puzzle[i][j]);
}
}
if(puzzle[i][j] >= '0' && puzzle[i][j] <= '8' && puzzle[i][j] == '.'){
if((puzzle[0][0] <= '3' && puzzle[0][6] <= '3') || (puzzle[6][0] <='3' && puzzle[6][6] <= '3')){
printf("Tentaizu Puzzle\n");
for(i = 0; i < 7; i++){
for(j = 0; j <7; j++){
printf("%s\n", puzzle[i][j]);
}
}
}
}
getch();
}
答案 0 :(得分:1)
您输入的=
代表==
。因此,C正在尝试将'.'
分配给puzzle[i][j] >= '0' && puzzle[i][j] <= '8' && puzzle[i][j]
的结果 - 并且您无法为(布尔值,在本例中为)值赋值。