#define MAX_TIMES 100 #define ARR_SIZE 9 #define MAX_NUM 10 void createNumArr(int arr[ARR_SIZE][ARR_SIZE]) { int i = 0; int j = 0; int k = 0; int tmp = 0; int flag = 0; int times = 0;
srand(time(NULL)); do { times = 0;
for (i = 0; i < ARR_SIZE; i++) { for (j = 0; j < ARR_SIZE; j++) { do { flag = 0; tmp = rand() % MAX_NUM; times++;
if (0 == tmp) { flag = 1; }
for (k = 0; (k < j) && (flag != 1); k++) { if (tmp == arr[i][k]) { flag = 1; break; } }
for (k = 0; (k < i) && (flag != 1); k++) { if (tmp == arr[k][j]) { flag = 1; break; } }
if (times > MAX_TIMES) { break;//jump out inner do-while } } while (flag);
if (times > MAX_TIMES) { break;//jump out inner for circle }
arr[i][j] = tmp; times = 0; //printf("arr[%d][%d]=%d\n", i, j, tmp); }
if (times > MAX_TIMES) { break;//jump out outter for circle } } } while (times > MAX_TIMES); }
int isSodoArr(int arr[ARR_SIZE][ARR_SIZE]) { int i = 0; int j = 0;
for (i = 0; i < ARR_SIZE; i++) { for (j = 0; j < ARR_SIZE; j++) { //do something } }
[code="c"]#define MAX_TIMES 100#define ARR_SIZE 9#define MAX_NUM 10void createNumArr(int arr[ARR_SIZE][ARR_SIZE]){ int i = 0; int j = 0; int k = 0; int tmp = 0; int flag = 0;...