九宫格标个号1-9个格
循环给1-9这9个数字取一个1-9的随机数
建一个长度9的数组做标记,每一个格被分配了之后就标记下,循环的时候重复了就重新给这个数分配.直到所有的9个数都被分配.
srand(time(0));
int nFlag[9]; //记录9个格是否已经被分配
int nLocation[9]; //记录1-9个数的位置
memset(nFlag, 0, sizeof(int)*9);
memset(nLocation, 0, sizeof(int)*9);
for(int i = 0; i < 9; ++i)
{
nLocation[i] = rand()%10;
if(nFlag[ nLocation[i] ] == 1)
{
//如果此格被分配过则重新分配此数字位置.
i--;
}
else
{
//如果没有则分配
nFlag[i] = 1;
}
}