C语言输出如题所示图案的代码如下:
#include
intmain()
{
intx;
inti,j,k;
printf("请输入,需要生成图案的行数(单数):");
scanf("%d",&x);
k=x/2+1;
for(i=1;i<=k;i++)
{
for(j=0;j<2*i-1;j++)
printf("*");
printf("\n");
}
for(i=k-1;i>=1;i--)
{
for(j=0;j<2*i-1;j++)
printf("*");
printf("\n");
}
}
扩展资料:
由题,需要输出这样一个图像,可将其看为一个正三角形与倒三角形的组合。
且对于下图:
*
***
*****
*******
*****
***
*
由行数与*号的关系可得,在对于总行数/2+1的部分,行数*2+1,即为*号的数目,因而得到了前半段图形的代码。
而对于后半部分的倒三角形,其行数可记为,倒数总行数/2...3、2、1行,则可利用循环以及2*行数-1,得到下半部分的图像。