1 条题解

  • 0
    @ 2025-10-30 14:23:34

    思路分析

    1. 任务拆解:

    • 读取整数n
    • 删除n中的所有数字0
    • 输出删除0后的数字

    2. 关键点分析:

    • 使用取模运算获取每一位数字
    • 跳过数字0,只将非0数字添加到新数中
    • 由于添加顺序是反向的,需要再次反转输出

    3. 步骤规划:

    • 读取n的值
    • 初始化新数c=0
    • 第一次循环:构建不含0的反转数
      • 获取个位数字w
      • 如果w不等于0,将其添加到c的末尾
      • 删除个位数
    • 第二次循环:输出正确顺序的数字
      • 获取c的个位数字w
      • 输出w
      • 删除个位数

    4. 代码对应:

    • cin>>n; → 读取整数
    • while(n) → 第一次循环处理原数字
    • w=n%10; → 获取个位数字
    • if(w!=0) c=c*10+w; → 如果是非0数字则添加到新数
    • n/=10; → 删除个位数
    • while(c) → 第二次循环输出结果
    • w=c%10; → 获取新数的个位数字
    • cout<<w; → 输出数字
    • c/=10; → 删除个位数
    • 1

    信息

    ID
    2344
    时间
    1000ms
    内存
    128MiB
    难度
    1
    标签
    (无)
    递交数
    196
    已通过
    150
    上传者