| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 651 人关注过本帖
标题:怎样将这个图案横着排呢?求教
只看楼主 加入收藏
跳跳鱼
Rank: 2
等 级:论坛游民
帖 子:74
专家分:60
注 册:2011-5-4
结帖率:93.75%
收藏
已结贴  问题点数:20 回复次数:13 
怎样将这个图案横着排呢?求教
这是一个图案,要求横着排一下,可我只会竖着,谁能帮我排一下?
以下是图案
tupian.zip (38.29 KB)

下面是程序代码
程序代码:
#include <iostream>
using namespace std;
int main()
{
    int i,j,m,n;

   //第一个
    for(i=1;i<=10;i++)
    {
        for(j=1;j<=i;j++)
        {
            cout<<"*";
        }
    cout<<endl;    
    }
    cout<<endl;
   
    //第二个
    for(m=1;m<=10;m++)
    {
        for(n=1;n<=(11-m);n++)

    {
        cout<<"*";
    }
    cout<<endl;
    }
    cout<<endl;

    //第三个
    
        for(m=1;m<=10;m++)
    {
        for(n=1;n<=(11-m);n++)

    {
        cout<<"*";
    }
    cout<<endl;
    }
    cout<<endl;


    //第四个
    for(i=1;i<=10;i++)
    {
        for(j=1;j<=i;j++)
        {
            cout<<"*";
        }
    cout<<endl;    
    }
    return 0;
}




    
搜索更多相关主题的帖子: include 
2012-08-21 22:47
dz789989
Rank: 2
等 级:论坛游民
威 望:1
帖 子:44
专家分:95
注 册:2012-8-21
收藏
得分:0 
最弱智的办法  定义二维数组 一个个输出
2012-08-22 00:42
pangding
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:北京
等 级:贵宾
威 望:94
帖 子:6784
专家分:16751
注 册:2008-12-20
收藏
得分:0 
我也觉得弄个二维数组最方便。
2012-08-22 01:57
mfs111116
Rank: 2
来 自:山东烟台
等 级:论坛游民
帖 子:28
专家分:38
注 册:2012-8-22
收藏
得分:0 
转换一下i和j不就成了?
新手,大家原谅些个……
2012-08-22 07:12
跳跳鱼
Rank: 2
等 级:论坛游民
帖 子:74
专家分:60
注 册:2011-5-4
收藏
得分:0 
回复 3楼 pangding
我这是做的书上的习题,还没到数组那一章!虽说能用数组做出来,但我想找一个其他的方法
比如用制表符,也不知道可不可以,在每个图后输出一个'\t'
2012-08-22 09:46
dz789989
Rank: 2
等 级:论坛游民
威 望:1
帖 子:44
专家分:95
注 册:2012-8-21
收藏
得分:0 
回复 5楼 跳跳鱼
\t代表8个字节的位置 就是4个英文字符的位置 所以你自己估摸着算呗
2012-08-22 12:23
vicious
Rank: 2
等 级:论坛游民
帖 子:2
专家分:20
注 册:2012-8-22
收藏
得分:0 
我用for写的  不知道 你是不是这个意思


# include <iostream>
using namespace std;

int main(void)
{
    int hang, lie, n = 10;
    for (hang = 1; hang <= 10; hang++)
    {
        for (lie = 1; lie <= 10-hang; lie++)
        {
            cout << "  ";
        }
        for (lie = 1; lie <= hang; lie++)
        {
            cout << " *";
        }
        for (lie = 1; lie <= 3; lie++)
        {
            cout << " ";
        }
        for (lie = 1; lie <= hang; lie++)
        {
            cout << "* ";
        }
        for (lie = 1; lie <= 10-hang; lie++)
        {
            cout << "  ";
        }
        for (lie = 1; lie <= 3; lie++)
        {
            cout << " ";
        }
        for (lie = 1; lie <= hang; lie++)
        {
            cout << "* ";
        }
        for (lie = 1; lie <= 10-hang; lie++)
        {
            cout << "  ";
        }
        for (lie = 1; lie <= 3; lie++)
        {
            cout << " ";
        }
        for (lie = 1; lie <= 10-hang; lie++)
        {
            cout << "  ";
        }
        for (lie = 1; lie <= hang; lie++)
        {
            cout << "* ";
        }

        cout << endl;
    }

    return 0;

}
2012-08-22 12:38
vicious
Rank: 2
等 级:论坛游民
帖 子:2
专家分:20
注 册:2012-8-22
收藏
得分:20 
回复 7楼 vicious
刚才写的有点太多了 。 下面这种比较好


# include <iostream>
using namespace std;
int main()
{
    for (int i = 1; i<=10; ++i)
    {
        for (int j = 0; j!=44; ++j)
        {
            if ((j > 10-i) && (j < 11) || (j > 11) && (j <= 11 + i)
                || (j > 22)&& (j <= 22+i) || (j > 43- i) && (j < 44))
            {
                cout << " *";
            }
            else
            {
                 cout << "  ";
            }
        
        }
        cout << endl;
    }
    return 0;
}
收到的鲜花
  • pangding2012-08-22 20:46 送鲜花  5朵   附言:写得不错。
2012-08-22 13:25
跳跳鱼
Rank: 2
等 级:论坛游民
帖 子:74
专家分:60
注 册:2011-5-4
收藏
得分:0 
回复 8楼 vicious
谢谢你这么认真的看了这个程序,但我不知道你写完后执行过这个程序没有,
按照你写的代码,图案会出现一些偏差。。。。。。
不过,你可以看一下下面这个代码,我觉得写得很好
程序代码:
#include <iostream>
using namespace std;
int main()

 {

 int row, column, space;


 for ( row = 1; row <= 10; ++row ) 

 {


 // part a
for ( column = 1; column <= row; ++column )
cout << '*';


 for ( space = 1; space <= 10 - row; ++space )
cout << ' ';

 cout << '\t';


 // part b
 for ( column = 10; column >= row; --column )

 cout << '*';


 for ( space = 1; space < row; ++space )

 cout << ' ';


 cout << '\t';


 // part c
for ( column = 10; column >= row; --column)



 cout << '*';


 for ( space = 1; space<row; ++space )

 cout << ' ';


 cout << '\t';


 // part d
 for ( column = 1; column <= row; ++column )
cout << '*';


 for ( space = 1; space <= 10 - row; ++space )
cout << ' ';

 cout << '\t';


 cout << endl;

 }

return 0;
}

下面是图片
图片附件: 游客没有浏览图片的权限,请 登录注册
2012-08-22 22:43
pangding
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:北京
等 级:贵宾
威 望:94
帖 子:6784
专家分:16751
注 册:2008-12-20
收藏
得分:0 
大概有思路就行了。方法会了这种题不用太过纠结。
2012-08-22 22:55
快速回复:怎样将这个图案横着排呢?求教
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.020088 second(s), 11 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved