godzhu 发表于 2008-6-23 21:09

请高手帮忙做下节下的部分 在线等

题目: 求显示如下
                         1
                       1 2 1
                     1 2 3 2 1
                   1 2 3 4 3 2 1
                 1 2 3 4 5 4 3 2 1
               1 2 3 4 5 6 5 4 3 2 1
将我写好的代码发上,请高手指点!!
#include <iostream.h>
void main()
{
        int n;
        cin>>n;
        for(int a=1;a<=n;a++)
        {
                for(int b=1;b<=(2*n-1-(2*a-1))/2;b++)
                        cout<<" ";
                for(int c=1;c<=2*a-1;c++)
                        cout<<"*";       
                        cout<<endl;
        }
       
}
我就是没有相同怎么改里面的数字 望高手给我补下  顺便说下思路  望不要改了已编好的代码。。谢谢

leius 发表于 2008-6-24 01:35

#include <iostream.h>
void main()
{
    int n;
    cin>>n;
    for(int a=1;a<=n;a++)
    {
                int num=1;
                int flag = true;        //判断加减
        for(int b=1;b<=(2*n-1-(2*a-1))/2;b++)
            cout<<" ";
        for(int c=1;c<=2*a-1;c++)
                {
            cout<<num;   
                        if(flag)
                                num++;
                        else
                                num--;
                        if(num==a)
                                flag =false;
                }
                cout<<endl;
    }
}

页: [1]

编程论坛