繁体   English   中英

使用循环打印图案

[英]For print a pattern by using loop

*这是我的 output

1234
 234
  34
   4

code //变量声明

    #include<iostream>
    using namespace std;
    int main(){
    int i,j,space,star,n;
    cin>>n;
    i=1;

//用于打印空间

while(i<=n){
 space=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;
    
    }

- 我想要一个 output:-

1 2 3 4
  2 3 4
    3 4
      4

好吧,在打印空格时,您可以这样做:

 cout<<" ";

你可以这样做:

 cout<<"  ";

也就是说,打印两个空格而不是一个。 这就是你的答案的一半。

稍后你这样做:

cout<<num;       

你可以这样做:

cout << num << " ";       

那就是——打印数字加一个空格。

完毕。 但是,如果你这样做,那么你会在行尾得到一个额外的尾随空格,所以你可以这样做。

std::string delim = "";
while (star) {        
    int num=i+j-1;        
    cout << delim << num;
    delim = " ";     
    star--;
    j++;
}

这是您的代码,更改非常简单。 我添加了一个变量 delim 并稍微更改了 cout 语句。

第一次通过循环时, delim是一个空字符串,因此将其添加到cout语句中什么也不做。 在那之后, delim是一个空格,所以现在你在除了第一个数字之前打印一个空格。

附带说明——请更多地使用空格。 对于我们这些年龄较大的人来说,将所有内容塞在一起变得非常难以阅读,这是掩盖错误的常用方法。 这是一种风格,但它会在未来为你节省数小时的时间。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM