在屏幕上输出以下图案:
*
***
*****
*******
*********
***********
*************
***********
*********
*******
*****
***
*
**分析问题:如何处理以上的情况呢?**
观察数量每行增加两个,直到第七行为止,不妨分为两部分进行考虑
第一部分需要考虑打出星星号,再打出空格。
打出星星只需要一次遍历,两此循环即可完成,关键是如何打出空格。
不妨新设一个变量temp,如下所示
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
#include <string.h>
#include <windows.h>
int main()
{
int i, j,temp,temp2=1,k=6;
for (i = 1; i <= 7; i++)
{
temp = k;
for (j = 0; j < temp;temp--)
printf(" ");
for (j = 1; j <= 2*i-1; j++)
printf("*");
k--;
printf("\n");}
for (i = 6; i > 0;i--)
{
for (j = 1; j <=temp2; j++)
printf(" ");
for (j = 2 * i - 1; j >= 1; j--)
printf("*");
printf("\n");
temp2++;}
system("pause");
return 0;
}
谢谢
星星塔问题:输出下列图案
最新推荐文章于 2022-11-15 10:31:52 发布