如何打印菱形

15 篇文章 1 订阅

输入一个正整数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");
        }
    }
}

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值