`
kmplayer
  • 浏览: 508800 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

输出1到最大的N位数

阅读更多
1,题意:
输入数字n,按顺序输出从1最大的n位10进制数。比如输入3,则输出1、2、3一直到最大的3位数即999。

2,用递归可以比较简短地实现:
#include <iostream>
#include <cstring>
using namespace std ;

void OutPut(char* number)
{
    bool isBegin = true;
    int nLength = strlen(number);
    for(int i = 0; i < nLength; ++ i)
    {
        if(isBegin && number[i] != '0')
            isBegin = false;
        if(!isBegin)
            cout << number[i];
    }
    cout << "\t";
}

void RecurOutPut(char* number, int n, int index)
{
    if(index == n )
    {
        OutPut(number);
        return;
    }
    for(int i = 0; i < 10; ++i)
    {
        number[index] = i + '0';
        //每次递归,实现给每个位0到9
        RecurOutPut(number, n, index + 1);
    }

}

void PrintToN(int n)
{
    if(n <= 0)
        return;
    char* number = new char[n + 1];
    number[n] = '\0';
    RecurOutPut(number, n, 0);
    delete[] number;
}

int main()
{
    PrintToN(2);
	return 0 ;
}
分享到:
评论

相关推荐

    打印从1到最大的n位数1

    标题中的“打印从1到最大的n位数1”是一个编程问题,主要涉及到计算机科学中的算法设计,特别是遍历和数字处理。这个问题源自LeetCode,一个知名的在线编程挑战平台,标签为"leetcode",意味着它是一个典型的算法题...

    输入整数n,输出1~n的素数

    素数又叫质数,质数是指在大于1的自然数中,除了1和它本身以外,不能被其他自然数整除的数。 问题: 输入一个整数n,输出1~n中的素数,里有详细解释,有问题也欢迎留言!谢谢支持啦~

    剑指Offer(Python多种思路实现):打印从1到最大的n位数

    剑指Offer(Python多种思路实现):打印从1到最大的n位数 面试17题: 题目:打印从1到最大的n位数 题:输入数字n,按顺序打印出从1到最大的n位十进制数,比如输入3,则打印出1、2、3一直到最大的3位数999. 解题思路一:...

    无位数限制求n的阶乘-c语言

    此外,为了防止溢出,数组的大小需要预估合理,通常可以设置为比n的阶乘可能出现的最大位数稍大一些。 总的来说,实现无位数限制的阶乘计算是一个涉及大数运算和数组处理的问题。通过自定义数组数据结构和适当的...

    求二位数组的“数组”。二维数组的“最大点”定义为:某个数式所在行的最大值,并且是所在列的最大值。某行或某列上可能有多个“最大点”

    题目:求二位数组的“最大点”。二维数组的“最大点”定义为:某个数式所在行的最大值,并且是所在列的最大值。某行或某列上可能有多个“最大点” 样例输入: 3 4 8 60 7 100 10 498 12 49 -71 132 4 85 ...

    一本书的页码从自然数1 开始顺序编码直到自然数n。

    对于一本页码从1到n(1 ≤ n ≤ 10^9)的书,统计所有页码中数字0到9各出现了多少次。 ### 解题思路 解题的关键在于理解如何统计数字的出现次数。首先,我们需要将问题简化,将其分解为更小的部分来逐步解决。 ###...

    printf函数输出格式

    3. `m.n`:`m`定义了输出字段的宽度,`n`定义了精度,用于控制小数位数或字符串的最大长度。 格式字符则用于指定输出数据的类型和格式,包括: 1. `%d`:输出十进制整数,可以配合`m`定义字段宽度。 2. `%ld`:...

    C语言程序:模块化设计.doc

    在实际编程中,这些函数的具体实现会根据需求进行逻辑编写,如判断素数、执行四则运算、处理数字位数、查找质因数、输入输出数组、数组操作、计算最大n、处理字符串数组以及加密字符串等。注意每个函数应有清晰的...

    输入两个正整数m和n求其最大公约数和最小公倍数 (2).pdf

    43. **数列求和**:找到满足条件的最大n,然后计算数列之和。 44. **筛选特定数列**:使用循环过滤出不满足条件的数。 45. **Fibonacci数列**:递归或迭代计算Fibonacci数列的前40项。 46. **密码加密**:根据...

    取指定位数的随机数.rar

    例如,`随机数(1, 100)`会返回1到100之间的随机整数(包括1和100)。 2. 整数运算: 在生成特定位数的随机数时,可能需要对生成的随机数进行整除和取余运算,以确保结果满足特定位数的要求。例如,如果你需要生成...

    Printf输出格式.

    - `%-m.n`:左对齐输出,其中`m`为最小宽度,`n`为精度。 - `%0m.n`:在`%-m.n`的基础上,不足时用0填充。 - `%h`:短整型数据。 - `%l`:长整型数据。 ### 格式控制参数详解 `printf`格式控制的完整格式为`%...

    浙江大学C语言上机练习题附答案

    20062 求m*m+1/m+(m+1)*(m+1)+1/(m+1)+(m+2)*(m+2)+1/(m+2)+......+n*n+1/n 13 20063 求1-2/3+3/5-4/7+5/9-6/11+…… 14 20064 求2^1+2^2+2^3+……+2^n 15 第4周(M4) 15 10007 显示图案 (复习...

    C#数组倒序输出

    1. **数组大小**:在本例中,我们假设输入的整数最多为4位数,因此定义了大小为4的数组。实际应用中应考虑更通用的方法来确定数组大小。 2. **异常处理**:在实际编程中,还需要加入异常处理逻辑,比如输入非数字...

    数据结构实验——链表

    这需要创建一个新节点并将其插入到链表中,直到用户输入-1为止。 2. 使用`ShowList`函数遍历链表并显示所有元素,确保它们在显示器上可见。 3. `LenList`函数用于计算链表的长度,通过遍历链表并计数节点来实现。 4....

    验证卡布列克运算(带详细的运算分析资料)

    1. **最大组合**:将组成这个四位数的四个数字按照从大到小的顺序排列,得到一个新的最大四位数。 2. **最小组合**:将组成这个四位数的四个数字按照从小到大的顺序排列,得到一个新的最小四位数(若其中包含0,则...

    电子学会青少年软件编程(C语言一级)等级考试试卷(2021年9月)-含答案和解题思路.pdf

    - 输出:小于 n 的最大质数。 **解析与解答:** 本题需要掌握质数判断的方法以及循环查找技巧。 **关键知识点:** 1. **质数判断**: 可以使用试除法来判断一个数是否为质数。 2. **循环结构**: 从 n 开始向下降序...

    Java的输出星号的小程序

    根据描述,“从上到下,每行有多到少”,意味着星号应该从最多逐渐减少至最少,形成一个倒置的三角形。但是,当前代码的内层循环`j 会导致每行的星号数量随着行数增加而增加,这与题目要求不符。 #### 正确实现 ...

    递归算法求两个数的最大公约数

    1. **基本情况**:如果\( m \)等于0,则最大公约数为\( n \)。 2. **递归步骤**:如果\( m \)不等于0,则最大公约数为\( n\mod m \)与\( m \)的最大公约数。 代码实现如下: ```cpp int RGcd(int m, int n) { if ...

    js要四舍五入且保留两位或N位有效数字或取整.pdf

    此外,`toFixed(n)` 的最大值是20,超出这个范围将导致错误。 2. **Math.round()** 函数: `Math.round()` 是另一个用于数字四舍五入的函数。它可以对整个数字进行四舍五入,而不是仅限于小数点后的特定位数。但是...

Global site tag (gtag.js) - Google Analytics