题目描述

输入数字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

面试题12:打印1到最大的n位数相关推荐

  1. 剑指offer面试题[12]-打印1到最大的n位数

    题目描述: 给定一个数字N,打印从1到最大的N位数. 输入: 每个输入文件仅包含一组测试样例. 对于每个测试案例,输入一个数字N(1<=N<=5). 输出: 对应每个测试案例,依次打印从1 ...

  2. 【剑指offer-Java版】12打印1到最大的n位数

    打印1到最大的n位数:比较简单了,但是考虑n 很大的时候n位的最大999-9可能会超出表示范围 大数问题-需要使用字符串或者数组模拟大数加法 public class _Q12 {public voi ...

  3. java biginteger位数,Java之BigInteger(面试题12:打印1到最大的n位数)

    1.  以<剑指offer 名企面试官精讲典型编程题> - 面试题12:打印1到最大的n位数为例. 题目内容如下: 输入数字n,按顺序打印出从1到最大的n位十进制数. 比如输入3,则打印出 ...

  4. (补充)【打印1到最大的n位数】剑指offer——面试题12:打印1到最大的n位数

    剑指offer--面试题12:打印1到最大的n位数 此题在牛客网上没有OnlineJudge,在此补充两种做法. 参考网址:https://blog.csdn.net/yanxiaolx/articl ...

  5. 计算机二级试题第12套,计算机等级考试二级VFP机试试题12

    第十二套 一.基本操作题(共四小题,第1和2题是7分.第3和4题是8分) 1.打开数据库PROD_M及数据库设计器,其中的两个表的必要的索引已经建立, 为这两个表建立永久性联系 2.设置CATEGOR ...

  6. 浙江高校计算机等级考试二级办公,浙江省高校计算机等级考试二级(高级办公)试题12.ppt...

    <浙江省高校计算机等级考试二级(高级办公)试题12.ppt>由会员分享,可在线阅读,更多相关<浙江省高校计算机等级考试二级(高级办公)试题12.ppt(11页珍藏版)>请在人人 ...

  7. 面试题17: 打印从1到最大的n位数

    /******************************************************************* *<剑指Offer--名企面试官精讲典型编程题>C ...

  8. 剑指offer--面试题12

    题目:打印从1~最大的n位数 分析:知道陷阱在哪,即n很大时若用通常的int,long会溢出:想到用字符串解决,这涉及到字符转数字及反过来. 刚开始纠结于字符串怎么加1,想了片刻,觉得应该取出最后一位 ...

  9. 剑指offer_12_打印1到最大的n位数

    剑指offer_12_打印1到最大的n位数 题目:输入数字n,按顺序打印出1到最大的n位十进制数.比如输入3,则打印出1.2.3一直到最大的3位数即999. 显然,这里面有一个小陷阱,当我们输入的n很 ...

  10. Python 输入任意整数,打印输入的数字是几位数

        Python 输入任意整数,打印输入的数字是几位数   根据题目,这个比较简单,但有很多人会想的比较复杂,复杂在键盘输入0开始,后面接任意个零都可以,那么,比如,输入00024,这个输入是没有 ...

最新文章

  1. tensorflow学习(7. GAN实现MNIST分类)
  2. javascript函数上的prototype属性的理解
  3. 3部世界顶级宇宙纪录片,献给对宇宙万物充满好奇的你
  4. php循环,die/exit脚本执行控制,文件载入及错误控制
  5. JS表单验证,最详细步骤,代码
  6. 【生信MOOC】生信数据库1
  7. [机缘参悟-65]:《兵者,诡道也》-7-三十六计解读-败战计
  8. python中双重循环_python中双循环
  9. PQ8.05硬盘分区图文教程
  10. Bigemap APP(Android)手机离线地图使用说明
  11. w7计算机文件夹打开怎么设置密码,win7电脑文件夹怎么设置密码
  12. Sexagenary Cycle(干支纪年)
  13. 洛谷 P4643 [国家集训队]阿狸和桃子的游戏
  14. 抽象基类与接口,共性与个性的选择
  15. CSS 轮廓(outline)/CSS margin(外边距)/CSS padding(填充)
  16. 批量修改视频尺寸,如此操作简单又专业
  17. Python快速入门 满满都是干货!
  18. 超详细:SwiftUI文本排版布局和动态字体缩放的奥秘
  19. round robin arbiter 轮询仲裁器设计
  20. Paypal 在线支付接口

热门文章

  1. Rds基于mysql开发的_开发云数据库RDS MYSQL版讲解
  2. 判断一个java对象中的属性是否都未赋值_100道Java基础面试题(一)
  3. 机械动作时序图怎么画_人物动作怎么画?动漫绘画人物姿势的基本画法!
  4. hdu 4738 Caocao's Bridges 求无向图的桥【Tarjan】
  5. 查看SELinux状态
  6. 【原】搬家了,请移步
  7. SharePoint 跨域还原网站一则
  8. WINCE6 同时支持简繁体
  9. .Net Excel 部分操作
  10. C#开发终端式短信的原理和方法