菜鸟问一道简单的题......

system1982 2003-12-05 08:11:13
打印 *
***
*****
*******
*****
***
*
这个图形应该怎么打啊......我做不出来....
我刚学C..........希望高手帮帮忙
...全文
30 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
baizhongri 2003-12-06
  • 打赏
  • 举报
回复
楼上的我认你了。真是个好程序员。如果第四层有100个星星 你打算也这么作啊。,
服了你了。这道题在潭浩强的第一本书里就有等我一会 我给你写代码。
zhtgong 2003-12-06
  • 打赏
  • 举报
回复
最简单的算法是:
printf(" *\n");
printf(" ***\n"); printf(" *****\n"); printf("*******\n"); printf(" *****\n"); printf(" ***\n"); printf(" *\n");
zoezinsser 2003-12-06
  • 打赏
  • 举报
回复
基本原理就是打印空格和'*'!
system1982 2003-12-06
  • 打赏
  • 举报
回复
那用C写是怎么样写的啊
baizhongri 2003-12-06
  • 打赏
  • 举报
回复
我刚学C的时候 用了一整天 才把这道题整出来了 我很笨。现在你面临这道题,我只能帮你一点。
这道题是想看你的FOR语句的潜逃使用如何。这道题,如果你自己解下来的话你一定会有新的体会。
所以我不会帮你写全代码。我只给你写一半 另一半希望楼主自己写。

*
* * *
* * * * * 这个图象的原代码。如下。如果这道题有人给你写全原代码请楼主不要看,不然
你将一事无成。。。。。
main()
{
int a,m,n,c=2,b=9;
for(m=1;m<4;m++)
{for(n=1;n<b;n++)
printf(" ");
for(a=1;a<c;a++)
printf("* ");
printf("\n");
b=b-2;
c=c+2;}
}
Rossonero 2003-12-06
  • 打赏
  • 举报
回复
也可以直接用n个printf,就是把图直接画上去.
  • 打赏
  • 举报
回复
*
***
*****
*******
*****
***
*
函数如下:
void print()
{
for(int i=1;i<=4;i++)
{
for(j=20-i;j>0;j--) //打印空格
cout<<' ';
for(j=i;j<2i;j++) //打印*
cout<<'*';
cout<<endl;
}
for(i= 0;i<3;ii++)
{
for(jk=17;jk<i;jk++--)
cout<<' ";
for(jk=5;jk>5-2io;jk--)
cout<<'*';
cout<<endl;
}
}
dda大概是这个意思,我没有上级调试
  • 打赏
  • 举报
回复
*
***
*****
*******
*****
***
*
函数如下:
void print()
{
for(int i=1;i<=4;i++)
{
for(j=20-i;j>0;j--) //打印空格
cout<<' ';
for(j=i;j<2i;j++) //打印*
cout<<'*';
cout<<endl;
}
for(i= 0;i<3;ii++)
{
for(jk=17;jk<i;jk++--)
cout<<' ";
for(jk=5;jk>I;jk--)
cout<<'(*';
coutK<<endl;
}
}
dda大概是这个意思,我没有上级调试
liquanle 2003-12-05
  • 打赏
  • 举报
回复
那不如复制一下,然后读文件。
zhouqingyuan 2003-12-05
  • 打赏
  • 举报
回复
最笨但实用的方法就是,设置一个二维字符数组,然后按位置放‘*’就可以了。
wchwwhw 2003-12-05
  • 打赏
  • 举报
回复
你只要看了一点C就应该编得出来~~~~~~~~~还是自己翻翻书
tomsx 2003-12-05
  • 打赏
  • 举报
回复
class Star{
public:
void go() const{cout<<"*\n";}
};

............下面的谁接一下.
zhouzhq009 2003-12-05
  • 打赏
  • 举报
回复
#include <iostream.h>

void printStar(int n) {
for (int i = 0; i < n/2; i++) {
for (int j = 0; j < n; j++) {
if ((j >= (n/2 - i)) && (j <= n/2 + i)) {
cout << '*';
} else {
cout << ' ';
}
}
cout << endl;
}
for (int i = 0; i < n; i++) {
cout << '*';
}
cout << endl;
for (int i = (n/2-1); i >= 0; i--) {
for (int j = 0; j < n; j++) {
if ((j >= (n/2 -i)) && (j <= n/2 + i)) {
cout << '*';
} else {
cout << ' ';
}
}
cout << endl;
}
}

void main() {
printStar(7);
}
ppgg1979 2003-12-05
  • 打赏
  • 举报
回复
真是难为楼主了,帮你顶一下,哪位兄弟帮帮他啊
system1982 2003-12-05
  • 打赏
  • 举报
回复
*
***
*****
*******
*****
***
*

system1982 2003-12-05
  • 打赏
  • 举报
回复
打错了.应该是
*
***
*****
*******
*****
***
*

70,037

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧