L2-4 打印菱形图案

SHUA_y 软件23 2023-11-12 20:37:38

本题要求编写程序,打印一个高度为n的、由“*”组成的正菱形图案。

本题属于循环结构的运用。

输入格式:

输入在一行中给出一个正的奇数n。

输出格式:

输出由n行星号“*”组成的菱形,如样例所示。每个星号后跟一个空格。

输入样例:

7

输出样例:

      * 
    * * * 
  * * * * * 
* * * * * * * 
  * * * * * 
    * * * 
      * 

题目解答:

#include <stdio.h>
 int main(){
    int n;
    do{
        scanf("%d", &n);
    }while( n<0 || n%2==0 );      //输入正的奇数
    
    for( int i=n/2; i>=1; i-- ){
        for( int j=1; j<=i; j++ )
            printf("  ");
        for( int x=1; x<=n-2*i; x++ )
            printf("* ");
        printf("\n");
    }                                //打印菱形的上半部分
    for( int m=1; m<=n; m++ )
        printf("* ");
    printf("\n");
    for( int w=1; w<=n/2; w++ ){
        for( int e=1; e<=w; e++ )
            printf("  ");
        for( int r=1; r<=n-2*w; r++ )
            printf("* ");
        printf("\n");
    }                                //打印菱形的下半部分
    return 0;
}

 

...全文
19 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
张老师 11-16
  • 打赏
  • 举报
回复

可以加上解题的思路分析、问题总结等

180

社区成员

发帖
与我相关
我的任务
社区描述
程序设计基础课程教学群
c语言c++ 高校 福建省·厦门市
社区管理员
  • xmzq001
  • jiangxiaoju
  • 星落化尘
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

请加入学习社区的软件23级同学修改社区昵称为学号+姓名,以便登记作业提交情况。

试试用AI创作助手写篇文章吧