输入数字 n,按顺序打印出从 1 到最大的 n 位十进制数。比如输入 3,则打印出 1、2、3 一直到最大的 3 位数 999。
1. 用返回一个整数列表来代替打印
2. n 为正整数,0 < n <= 5
代码
int* printNumbers(int n, int* returnSize ) {
int max = 0, i = 0;
while(n){
max = 10*max + 9;
n--;
}
int *result = (int*)malloc(max * sizeof(int));
for(i = 0; i < max; i++){
*(result+i) = i+1;
}
*returnSize = max;
return result;
}
不考虑大数问题过于简单,没什么可讲的