上面有一句错了,a是不知道的,但他除n的余数是num,所以直接用num代替a%n
[fly]存在即是合理[/fly]
void change(char *chars, int n, int *a) { //将整数 n转换为二进制字符串,存入chars中 if (0 == n) { *a = 0; return; } change(chars, n / 2, a); chars[(*a)++] = n % 2 + '0'; chars[*a] = '\0'; } int main() { char chars[1000][100]; int i; for (int j = 1;j < 1000;j++) change(chars[j], j, &i); return 0; }