| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 877 人关注过本帖
标题:这个程序输出这样的图形
只看楼主 加入收藏
askCpp
Rank: 1
等 级:新手上路
帖 子:16
专家分:0
注 册:2007-9-23
收藏
 问题点数:0 回复次数:10 
这个程序输出这样的图形

这个程序输出这样的图形: ,高手叫不要见笑我呢,我知道这个程序很差,但是我没怎么编过程,所以也只能写成这样呢,5555
#
###
#####
#######
#########
#######
#####
###
#

#include <iostream>
using namespace std;

int main()
{
cout<<"Input a number:";
int m,n,num;
cin>>num;
int halfNum=num/2,remainNum=num%2;
if(remainNum==0)
{
for(m=0;m<=halfNum-1;m++)
{
for(int i=halfNum-(m+1);i>0;i--)
cout<<' ';
for(int j=2*m+1;j>0;j--)
cout<<'#';
for(int k=halfNum-(m+1);k>0;k--)
cout<<' ';
cout<<endl;
}
for(n=0;n<=halfNum-1;n++)
{
for(int i=0;i<n;i++)
cout<<' ';
for(int j=(num-2*n)-1;j>0;j--)
cout<<'#';
for(int k=0;k<n;k++)
cout<<' ';
cout<<endl;
}
}
else if(remainNum!=0)
{
for(m=0;m<=halfNum;m++)
{
for(int i=halfNum-m;i>0;i--)
cout<<' ';
for(int j=2*m+1;j>0;j--)
cout<<'#';
for(int k=halfNum-m;k>0;k--)
cout<<' ';
cout<<endl;
}
for(n=0;n<halfNum;n++)
{
for(int i=0;i<n+1;i++)
cout<<' ';
for(int j=num-2*(n+1);j>0;j--)
cout<<'#';
for(int k=0;k<n+1;k++)
cout<<' ';
cout<<endl;
}
}
return 0;
}




[此贴子已经被作者于2007-9-24 13:10:02编辑过]

搜索更多相关主题的帖子: 图形 输出 
2007-09-24 13:06
雨中飞燕
Rank: 3Rank: 3
等 级:禁止访问
威 望:8
帖 子:2200
专家分:0
注 册:2007-8-9
收藏
得分:0 
写出来就不错了,不过如果你认真思考一下,你会发现可以写出非常简短的代码



by 雨中飞燕 QQ:78803110 C/C++讨论群:5305909

[url=http://bbs.bc-cn.net/viewthread.php?tid=163571]请大家不要用TC来学习C语言,点击此处查看原因[/url]
[url=http://bbs.bc-cn.net/viewthread.php?tid=162918]C++编写的Windows界面游戏[/url]
[url=http://yzfy.org/]C/C++算法习题(OnlineJudge):[/url] http://yzfy.org/
2007-09-24 13:58
askCpp
Rank: 1
等 级:新手上路
帖 子:16
专家分:0
注 册:2007-9-23
收藏
得分:0 
版主你发发你写的?
我看看是怎么写的
2007-09-24 14:31
雨中飞燕
Rank: 3Rank: 3
等 级:禁止访问
威 望:8
帖 子:2200
专家分:0
注 册:2007-8-9
收藏
得分:0 
#include <iostream>
#include <cmath>
using namespace std;
#define PC(x) putchar(x)
int main()
{
int n=4;
for(int y=-n;y<=n;++y)
for(int x=-n;x<=n || (PC(10),0);++x)
(abs(x)+abs(y)<=n)?PC('#'):PC(' ');
return 0;
}


by 雨中飞燕 QQ:78803110 C/C++讨论群:5305909

[url=http://bbs.bc-cn.net/viewthread.php?tid=163571]请大家不要用TC来学习C语言,点击此处查看原因[/url]
[url=http://bbs.bc-cn.net/viewthread.php?tid=162918]C++编写的Windows界面游戏[/url]
[url=http://yzfy.org/]C/C++算法习题(OnlineJudge):[/url] http://yzfy.org/
2007-09-24 14:44
askCpp
Rank: 1
等 级:新手上路
帖 子:16
专家分:0
注 册:2007-9-23
收藏
得分:0 

好厉害,不过我看不懂for(int x=-n;x<=n || (PC(10),0);++x)
能否解释下程序的流程?

2007-09-24 15:23
雨中飞燕
Rank: 3Rank: 3
等 级:禁止访问
威 望:8
帖 子:2200
专家分:0
注 册:2007-8-9
收藏
得分:0 

你把它展开就清楚了嘛~~~~~~~~~~~~
#include <iostream>
#include <cmath>
using namespace std;
int main()
{
int n=4;
for(int y=-n; y<=n; ++y)
{
for(int x=-n; x<=n; ++x)
{
if(abs(x)+abs(y)<=n)
putchar('#');
else
putchar(' ');
}
putchar('\n');
}
return 0;
}



by 雨中飞燕 QQ:78803110 C/C++讨论群:5305909

[url=http://bbs.bc-cn.net/viewthread.php?tid=163571]请大家不要用TC来学习C语言,点击此处查看原因[/url]
[url=http://bbs.bc-cn.net/viewthread.php?tid=162918]C++编写的Windows界面游戏[/url]
[url=http://yzfy.org/]C/C++算法习题(OnlineJudge):[/url] http://yzfy.org/

2007-09-24 16:09
zz209
Rank: 1
等 级:新手上路
帖 子:24
专家分:0
注 册:2007-4-29
收藏
得分:0 
代码太乱了 可以精简
2007-09-24 16:43
askCpp
Rank: 1
等 级:新手上路
帖 子:16
专家分:0
注 册:2007-9-23
收藏
得分:0 

我怎么就这么笨呢?
一点算法的思想都没有
悲哀

2007-09-24 20:22
aipb2007
Rank: 8Rank: 8
来 自:CQU
等 级:贵宾
威 望:40
帖 子:2879
专家分:7
注 册:2007-3-18
收藏
得分:0 

初学的话能写出来就不错了,其他的要靠积累。

才学的时候,我连
*
**
***

都弄不出来


Fight  to win  or  die...
2007-09-24 22:09
coachard
Rank: 3Rank: 3
等 级:新手上路
威 望:7
帖 子:1251
专家分:0
注 册:2007-8-12
收藏
得分:0 
小燕子不是写过四行代码吗???

偶学编程,也许本身就是一个错。。。
2007-09-24 22:57
快速回复:这个程序输出这样的图形
数据加载中...
 
   



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

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