1
目前我無法讓我的代碼工作,在檢查數獨板後,它將一個新值分配給一個非插槽,然後查看它是否仍然有效。二維陣列澄清
目前,即使我輸入正確的輸入,這段代碼仍然告訴我,我的塊是無效的。
tempsudoku板基本上是一個數獨板,有一個0s的隨機插槽代表空白。有人可以看到我的代碼做錯了嗎?
int truefalse=1;
printf("Enter a row (1-9), column (1-9) and number (1-9), separated by spaces: ");
scanf("%d %d %d", &row, &column, &number);
tempsudoku[row-1][column-1]=number;
for(i=0;i<=2;i++)
{
for(j=0;j<=2;j++)
{
int check[9]={0};
for(x=0;x<=(j*3)+2;x++)
{
for(y=0;y<=(i*3)+2;y++)
{
for(k=0;k<=8;k++)
{
if(tempsudoku[x][y]==k+1)
{
check[k]++;
}
}
}
}
for(k=0;k<=8;k++)
{
if(check[k]>=2)
{
printf("Error: repeats in board\n");
truefalse=0;//basically means its false
}
}
}
}
爲什麼你不實際使用TRUE/FALSE,而不是'truefalse = 0'? –