回 帖 发 新 帖 刷新版面

主题:【求助】打印图形(50分悬赏)

打印以下图形:
n=10
          **********          **********
         *********              *********
        ********                  ********
       *******                      *******
      ******                          ******
     *****                              *****
    ****                                  ****  
   ***                                      ***
  **                                          **
 *                                              *  
**********                               *********
谢谢

回复列表 (共2个回复)

沙发

如果N是固定的,打印算法就很简单,其实这是一个考FOR语句的算法:将当前行数转换成对应的图形.还是很好搞好.

板凳

#include<iostream>
using namespace std;
void main()
{
    int n;
    cin>>n;
    for(int i=n;i>=0;i--)
    {
        if(i==0)
        {
            for(int j=n;j>0;j--)
                cout<<"*";
            for(j=30;j>0;j--)
                cout<<" ";
            for(j=n;j>0;j--)
                cout<<"*";
        }
        else
        {
            for(int j=i;j>0;j--)
                cout<<" ";
            for(j=i;j>0;j--)
                cout<<"*";
            for(int m=50-4*i;m>0;m--)
                cout<<" ";
            for(j=i;j>0;j--)
            cout<<"*";
        }
        cout<<'\n';
    }
}

我来回复

您尚未登录,请登录后再回复。点此登录或注册