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

C++循环打印数字图案修改求助:实现数字间带空格的指定输出格式

代码修改方案

你只需要调整两处逻辑即可实现目标输出:

  • 调整行首空格的打印数量:因为数字之间多了1个间隔空格,单数字占位从1位变成2位,所以行首空格总数需要调整为原来的2倍
  • 打印数字时追加输出1个空格,实现数字分隔效果

修改后的完整代码

#include<iostream>
using namespace std;
int main(){
    int i,j,space,star,n;
    cin>>n;
    i=1;
    while(i<=n){
        // 调整前导空格数量为2*(i-1)
        space=2*(i-1);
        while(space){
            cout<<" ";
            space--;
        }
        j=1;
        star=n-i+1; 
        while(star){        
            int num=i+j-1;        
            // 数字后追加空格
            cout<<num<<" ";       
            star--;
            j++;
        }
        cout<<"\n";
        i++;
    }
    return 0;
}

效果验证

当输入n=4时,输出结果完全匹配需求:

1 2 3 4 
  2 3 4 
    3 4 
      4 

如果不需要每行末尾多余的空格,也可以调整数字打印逻辑,判断是否是当前行最后一个数字,仅在非最后一个数字后加空格即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 09:45:03