You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

C++编程如何去除10及以上数字的前置0,仅1-9保留前置0

C++代码修正方案

问题原因

现有代码固定给每个数字前拼接0,所以10及以上的数字会出现多余的前置0,同时还存在两处不符合预期的问题:输出开头会多一个多余的.、没有按10个数字为一行换行。

修正后代码

#include <iostream>
using namespace std;
int main()
{
    int b;
    cin >> b;
    if (b > 100 || b < 1){
        cout << "OUT OF RANGE";
    }
    else {
        for (int a = 1; a <= b; a++){
            if (a != 1) {
                cout << ".";
            }
            if (a < 10) {
                cout << "0" << a;
            } else {
                cout << a;
            }
            if (a % 10 == 0) {
                cout << endl;
            }
        }
    }
    return 0;
}

关键修改说明

  • 新增数字大小判断:仅当数字小于10时补充前置0,10及以上直接输出原数字,解决多余前置0的问题
  • 调整分隔符输出逻辑:仅非第一个数字前输出.,避免开头出现多余的点
  • 新增换行逻辑:每输出10个数字触发一次换行,和示例输出格式对齐
  • 补充输入小于1的边界判断,过滤无效输入

内容的提问来源于stack exchange,提问作者Hyuyeong

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.02 07:57:04