C语言旅途之用for循环求中空的金字塔

Ⅰ、用for循环求中空的金字塔:
①、//代码摘下直接可以运行
#include<stdio.h>
int main()
{
int i,j,n;
printf(“Please input the number of n!\n”);
scanf("%d",&n);
for(i=1;i<=n;i++)
{
for(j=1;j<=n-i;j++) //此后的两个for循环,是先后顺序且互相挨着的
printf(" “);
printf(”");
for(j=1;j<=2
i-3;j++) //当j<=的这个数小于j=1时,不成立,则下面的循环不执行;
printf(" “);
if(i!=1)
printf(”*");
printf("\n");

}
return 0;

}
②、结果展示:
例如:此程序是和上一个的程序差不多,但最终形成的图像是不一样的;
当输入n=10时,代表的是此中空的金子塔有十层;例如:当输入的n=10,则结果如下:
在这里插入图片描述
☺寄语:
Ⅰ、此程序在Visual C++6.0版本上运行的;
Ⅱ、如果我给的程序有问题,或在叙述方面有问题,或者看不懂我讲解的意思,请及时指出或留言和我讨论,谢谢各位大佬!!!
Ⅲ、程序中也使用了嵌套循环,此程序中有三个for循环:
第一个for循环是决定总共的层数,n层;
第二个for循环是决定每一行的第一个 * 号的开始位置,而等式是经过规律推导出来的 j<=n-i ;
第三个for循环是决定每一行的最后一个 * 号的最终位置,而等式是经过规律推导出来的 j<=2*i-3,且仅当i不等于1时,输出为 “ * ”;

发布了40 篇原创文章 · 获赞 0 · 访问量 599

猜你喜欢

转载自blog.csdn.net/weixin_43405300/article/details/103860241