C语言程序编写如下:
#include
void main()
{
int i,j,k,n;
printf("请输入金字塔的层数:");
scanf("%d",&n);
知识延展: 掌握c语言的写法之后,就找一些简单的题目,如课本的课后练习都是简单的,自己先不要看答案,自己想一下,应该怎么写,最好边想边在稿纸上写,如果能完整的写完,那就上机调试,自己改一下,成功当然最好,要是不行,就看一下答案,一定要完全理解才行,一两天后,自己再写一下,看看能不能写出来。
for(i=0;i
{
for(j=0;j<(n-1-i);j++)
printf(" ");
for(k=0;k<=2*i;k++)
printf("*");
printf("\n");
}
}
#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");
}
}
#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行倒三角。
注意寻找行数(第几行)、开头空格数、该行星星总数三者之间的关系。
printf("* *** ***** ******* ***** *** *");
不会是要这样吧?
*
***
*****
*******
*****
***
*
首先你可以分两步进行将整个图形分为上下两部
写程序的话直接用for循环就可以了
当然还是可以使用while循环