1樓:匿名使用者
#include
int result=0; //結果數
int main()
printf("數獨的解為:\n\n");
sudoku(a,0);
if(result==0)
printf("此數獨無解!");
return 0;
}//輸出可行的解
void print(int a[9][9])printf("\n");
if((i==2)||(i==5))
printf("\n");
}printf("\n");
}//判斷是否可以將第i行、第j列的數設為kbool check(int a[9][9],int i,int j,int k)
//判斷列
for(m=0;m<9;m++)
//判斷所在小九宮格
int t1=(i/3)*3,t2=(j/3)*3;
for(m=t1;m
2樓:匿名使用者
當年我們做大程的時候本來也想做數獨來著,後來時間不夠沒做成.不知道專業人士怎麼編的,只能提供一點當時的思路給你,
1.9*9個格子對應一個陣列a,陣列的第一個值從0到9表示其中填的數字,0就是不填,另一個值表示它在桌面上的位置就是座標
2.需要10張**,空白和9個數字
3.通過對滑鼠點選的反應改變格子陣列a的值,且將相應**覆蓋在相應座標上
4.事先輸入若干組陣列a的值(每組81個數),作為題庫
5.進行遊戲時隨機抽取題庫中的一組,再隨機抽取若干格子顯示出來,其他留白.
6.填完後用三個迴圈判斷下每行每列每塊是否有相同的數字,沒有則通過.
具體編按鈕、放圖、滑鼠點選響應等各種問題查一下書,有很多書上有很多教的這種一小段一小段的程式源**,直接抄下就行了。
加油^^
3樓:匿名使用者
使用回溯法。自己去好好看看吧。
4樓:仉紫玉
你知道看別人**還不如自己寫**麼
c語言題目,c語言題目
不一樣,分別是1,2 至於第一個是以就不用說了,輸出的配對是從左向右的。第二個區別在於多了一個括號,相當於逗號表示式。輸出的是逗號後面的數,即是b的值。第一個輸出1,第二個輸出2 原因第一個程式只輸出一個 d,按照從左到右的順序來輸出,第二個程式,printf d a,b a,b 式中逗號運算子使用...
C語言題目,求大佬解答C語言題目,求大佬解答
include include int n typedef struct student stu stu creat void add student stu void show stu stu delete student stu void paiming stu void show one st...
c語言程式設計題目,C語言程式設計題目
給你下思 來路吧第一個 素數演算法不好 源 改用素數篩 沒聽說過的 話 自己搜 很常用的演算法 第二個 對於a先求個位數 然後按照你的演算法求值如果還是超時的話 那麼進行折半遞迴 類似於int get value int a,int b int main include int cacu int a...