欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

打印菱形

程序员文章站 2024-03-23 18:24:40
...

输入一个正整数repeat (0 < repeat < 10),做repeat次下列操作:

输入一个正整数n,打印一个边长为 n 的菱形图案。

输出使用以下语句:

printf(" ");

printf("* ");

printf("\n");

 

输入输出示例:括号内为说明

输入

2        (repeat=2)

3        (n=3)

4        (n=4)

 

 

(n=3的菱形图案)

    *  

  * * *

* * * * *

  * * *

    *

 

      * (n=4的菱形图案)

    * * *

  * * * * *

* * * * * * *

  * * * * *

    * * *

      *

 

#include <stdio.h>
#include <math.h>
int main(void)
{   int i, j, n;
    int repeat, ri;
    scanf("%d", &repeat);
    for(ri = 1; ri <= repeat; ri++)
    {   int space, star;
        scanf("%d", &n);
        for(i=-(n-1); i<=n-1; i++)
        {  space = abs(i);         /* 每行星号左边的空格数 */
           star = 2*n-1 - space*2; /* 2*n-1是中间那行星号的个数 */
           for(j=0; j < space; j++)   printf("  ");
           for(j=0; j < star; j++)    printf("* ");
           printf("\n");
        }
    }
}