如何用C语言程序输出以下图形 ⼀⼀ * *** ***** ******* ***** *** *

2024年11月05日 21:29
有5个网友回答
网友(1):

C语言程序编写如下:

#include


void main()


{
int i,j,k,n;


printf("请输入金字塔的层数:");


scanf("%d",&n);


for(i=0;i


{
for(j=0;j<(n-1-i);j++)


printf(" ");


for(k=0;k<=2*i;k++)


printf("*");


printf("\n");
}
}


知识延展:

掌握c语言的写法之后,就找一些简单的题目,如课本的课后练习都是简单的,自己先不要看答案,自己想一下,应该怎么写,最好边想边在稿纸上写,如果能完整的写完,那就上机调试,自己改一下,成功当然最好,要是不行,就看一下答案,一定要完全理解才行,一两天后,自己再写一下,看看能不能写出来。

网友(2):

#include "stdio.h"

void main(void) {

int i, j;

for(i = 1; i <= 4; i++) {

for(j = 1; j<= 4-i; j++)

printf(" ");

for(j = 1; j <= 2*i-1; j++)

printf("*");

printf("\n");

}

for(i = 3; i >= 1; i--) {

for(j = 1; j <= 4-i; j++)

printf(" ");

for(j = 1; j <= 2*i-1; j++)

printf("*");

printf("\n");

}

}

网友(3):

#include
void main()
{
int i,j,k;
for(i=0;i<4;i++)
{
for(j=0;j<4-i;j++)
putchar(' ');
for(k=0;k<2*i+1;k++)
putchar('*');
putchar('\n');
}
for(i=2;i>=0;i--)
{
for(j=0;j<4-i;j++)
putchar(' ');
for(k=0;k<2*i+1;k++)
putchar('*');
putchar('\n');
}
}

输出结果:
第1行1个*,居中
第2行3个*,居中
第3行5个*,居中
第4行7个*,居中
第5行5个*,居中
第6行3个*,居中
第7行1个*,居中

提示:
程序主要由连个for循环构成,上面那个是输出1-4行正三角,下面是输出5-7行倒三角。
注意寻找行数(第几行)、开头空格数、该行星星总数三者之间的关系。

网友(4):

printf("* *** ***** ******* ***** *** *");

不会是要这样吧?
*
***

*****
*******

*****
***

*

网友(5):

首先你可以分两步进行将整个图形分为上下两部
写程序的话直接用for循环就可以了
当然还是可以使用while循环