在网站建设中 为了防止工期拖延,台州网站设计 解放路,域名查询 查询网,湛江网站建设策划题目描述 输入数字n#xff0c;按顺序打印出1到最大的n位十进制数。比如输入3#xff0c;则打印出1、2、3一直到最大的3位数即999。 题目分析 剑指Offer#xff08;纪念版#xff09;P94 代码实现 void Print1ToMaxOfNDigits_2(int n)
{if(n 0)return;char* number n…题目描述 输入数字n按顺序打印出1到最大的n位十进制数。比如输入3则打印出1、2、3一直到最大的3位数即999。 题目分析 剑指Offer纪念版P94 代码实现 void Print1ToMaxOfNDigits_2(int n)
{if(n 0)return;char* number new char[n 1];number[n] \0;for(int i 0; i 10; i){number[0] i 0;Print1ToMaxOfNDigitsRecursively(number, n, 0);}delete[] number;
}void Print1ToMaxOfNDigitsRecursively(char* number, int length, int index)
{if(index length - 1){PrintNumber(number);return;}for(int i 0; i 10; i){number[index 1] i 0;Print1ToMaxOfNDigitsRecursively(number, length, index 1);}
}// 字符串number表示一个数字数字有若干个0开头
// 打印出这个数字并忽略开头的0
void PrintNumber(char* number)
{bool isBeginning0 true;int nLength strlen(number);for(int i 0; i nLength; i){if(isBeginning0 number[i] ! 0)isBeginning0 false;if(!isBeginning0){printf(%c, number[i]);}}printf(\t);
}转载于:https://www.cnblogs.com/xwz0528/p/4831362.html