因為board[5][5]設在global->都會初始化為0 place(1) 先運作board[1][1](因為為0->valid回傳值為1 再來運作place(2) 當board[2][2]valid才會回傳1 再來運作place(3) 當board[3][3]valid才會回傳1 -> 3+1>4 -> show_board ->回到place(3)的board[row=3][i=3] = 0; ->回到place(2)的board[row=2][i=2] = 0; -> i_2=3 ->board[2][3]valid會回傳1 再來運作place(3) 當board[3][2]valid才會回傳1 -> 3+1>4 -> show_board ->回到place(3)的board[row=3][i=2] = 0; ->回到place(2)的board[row=2][i=3] = 0; ->回到place(1)的board[row=1][i=1] = 0; ->i_1=2->board[1][2](因為為0->valid回傳值為1 再來運作place(2) 當board[2][1]valid會回傳1 再來運作place(3) 當board[3][3]valid才會回傳1 -> 3+1>4 -> show_board ->回到place(3)的board[row=3][i=3] = 0; ->回到place(2)的board[row=2][i=1] = 0; -> i_2=3 ->board[2][3]valid會回傳1 再來運作place(3) 當board[3][1]valid才會回傳1 -> 3+1>4 -> show_board ->回到place(1)的board[row=1][i=2] = 0; -> i_1=3 ->board[1][3](因為為0->valid回傳值為1 再來運作place(2) 當board[2][1]valid會回傳1 再來運作place(3) 當board[3][2]valid會回傳1 -> 3+1>4 -> show_board ->回到place(3)的board[row=3][i=2] = 0; ->回到place(2)的board[row=2][i=1] = 0; -> i_2=2 ->board[2][2]valid會回傳1 再來運作place(3) 當board[3][1]valid才會回傳1 -> 3+1>4 -> show_board ->回到place(1)的board[row=1][i=3] = 0;