星星的排列算法(C++或C语言)

写以下图形的输出方法:说明是如何思考的()*******************************... 写以下图形的输出方法:说明是如何思考的()

*******
*****
***
*
***
*****
*******
展开
 我来答
hughxing
2010-03-26 · TA获得超过4358个赞
知道小有建树答主
回答量:495
采纳率:0%
帮助的人:0
展开全部
/*
**把册蔽图看成两个上下对称的部分
**两部分都是4行,只不过是相反的顺序,
**所以写一个两层循环的语棚姿渗句即可,
**只要让i分别链脊递减和递增即可得这两个部分的图
**有问题Hi我
*/

#include<iostream>
using namespace std;

int main()
{
int i,j,k;

//第一部分图,从i=4开始递减至1
for(i=4;i>=1;i--) //第一层循环控制行数
{
j=i*2-1;
k=j/2;
while((3-k)>0) //控制空格输出次数
{
cout<<" ";
k++;
}
while(j>0) //控制符号“*”输出次数
{
cout<<"*";
j--;
}
cout<<'\n'; //一行输出结束
}

//第二部分图,从i=1开始递增至4
for(i=1;i<=4;i++)
{
j=i*2-1;
k=j/2;
while((3-k)>0)
{
cout<<" ";
k++;
}
while(j>0)
{
cout<<"*";
j--;
}
cout<<'\n';
}

return 0;
}
njcctgj2009
2010-03-26
知道答主
回答量:15
采纳率:0%
帮助的人:12.7万
展开全部
for (i = 9; i >= 1; i--)
{
i--;
for (j = 0; j <= (10 - i) / 2 - 1; j++)
{
System.out.print(c1);
}
for (m = 0; m <= i; ++m)
{
System.out.print(c2);
}
System.out.print("念老启\n");
}
for (i = 0; i < 10; i++)
{
i++;
for (j = 0; j <= (9 - i) / 2; j++)
{
System.out.print(c1);
}
for (m = 0; m <= i - 1; ++m)
{
System.out.print(c2);
}
System.out.print("\n");

注:第一层仔如循环控制列数,第二场控含兆制行数。

}
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式