#include <stdio.h>
#include <ctype.h>
#include <stdlib.h>
#include <time.h>
#define SIZE 4
#define SWAP(x,y,t) ((t)=(x),(x)=(y),(y)=(t))
int *total_choice=NULL;
int step=0;
void display(int board[][SIZE]); //展示棋盘的函数
int is_valid(int board[][SIZE],int choice); //判断玩家选择是否有效的函数
void move(int board[][SIZE],int choice); //移动数字的函数
int is_complete(int board[][SIZE]); //判断拼图是否完成的函数
void initial(int board[][SIZE]); //初始化棋盘
void turn_left(int board[][SIZE]); //电脑左移
void turn_right(int board[][SIZE]); //电脑右移
void turn_up(int board[][SIZE]); //电脑上移
void turn_down(int board[][SIZE]); //电脑下移
void main()
{
int board[SIZE][SIZE]={ //The board
{1,2,3,4}, //Initial values are reference numbers
{5,6,7,8}, //used to select a vacant square for