用c++编写程序输出以下图案(数字也要哦: 1 * 2 *** 3 ***** 4******* 5 ***** 6 *** 7 *

1*2***3*****4*******5*****6***7*结果应该是这样才行,而且,输出要包括数字啊,最好能用循环结构!谢谢大伙啦。。。。... 1 *
2 ***
3 *****
4*******
5 *****
6 ***
7 *
结果应该是这样才行,而且,输出要包括数字啊,最好能用循环结构!谢谢大伙啦。。。。
展开
 我来答
望穿秋水待伊人
2013-03-15 · TA获得超过644个赞
知道小有建树答主
回答量:708
采纳率:100%
帮助的人:794万
展开全部
本来都不想回答的,还是写个玩玩吧。
你可以把X的值改成其他的奇数,我的方法是通用的,你仔细体会一下吧。
但是输出的行号占的位数多的时候,会发生变形,你可以修正 一下。

#include <iostream>
using namespace std;
int main()
{
int x = 7;
for (int i= 1;i<= x;i++)
{
cout<<i;
for (int j= 1;j<=x;j++)
{
if ( abs((x+1)/2 - j ) >= (x + 1)/ 2 - abs( i - (x + 1)/2 ) )
{
cout<<' ';
}
else
cout<<'*';
}
cout<<endl;
}
//system("pause");
return 0;
}
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
Lsy_lii
2013-03-15 · TA获得超过183个赞
知道小有建树答主
回答量:134
采纳率:0%
帮助的人:120万
展开全部
#include "stdio.h"
void main()

{
int Row;
int Line;
int Temp;
int Nomber = 7;
for (Row = 0; Row < (Nomber + 1)/2; Row++)
{
printf_s("%d", Row + 1); //新添加的。
for (Line = 0; Line < ((Nomber + 1)/2 - 1) - Row; Line++)
{
printf_s(" ");
}
for (Temp = 0; Temp <= 2*Row; Temp++)
{
printf_s("*");
}
printf_s("\n");
}
for (Row = 0; Row < ((Nomber + 1)/2 - 1); Row++)
{
printf_s("%d", Row + 5); // 新添加的。
for (Line = 0; Line <= Row; Line++)
{
printf_s(" ");
}
for (Temp = 0; Temp <= ((Nomber + 1)/2 - 2*Row); Temp++)
{
printf_s("*");
}
printf_s("\n"); //你要是vc6.0 就修改为printf
}
}

我替你做了。。无语了。估计你在纠结。。我说话有点火,希望你用心学习。。。

基本思想都给你了,你敢不敢自己动点脑子??你这种态度态度真心没法学好C++。。这么简单的问题,你都解决不了?
你控制一下,每行的第一个输出数字,从第二个开始循环不会??稍微动个脑子啊,大神。。。
追问
谢谢!!!!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式