输出图形

在这里插入图片描述
在这里插入图片描述

思路
打印图形,分正方形和菱形

坑点
正方形简单
菱形分两个部分打印,控制空格就行,记得换行。

代码

#include<bits/stdc++.h>
using namespace std;
int main()
{
    
    
    char m;
    int n,t=1; 
    cin>>m>>n;
    if(m=='Z')
    {
    
    
        for(int i=0;i<n;i++)//有n行
        {
    
    
            for(int j=0;j<n;j++)//一行有n个*
            {
    
    
                printf("*");
            }
            printf("\n");
        }
    }
    if(m=='L')//将菱形分为两个部分输出,第一部分有n行,第二部分有n-1行
    {
    
    
        for(int i=0;i<n;i++)//先要输出n行
        {
    
    
            for(int j=1;j<n-i;j++)//每一行有i个空格
            {
    
    
                printf(" ");
            }
            for(int j=0;j<t;j++)//第一行有1个*,依次递推 
            {
    
    
                printf("*");
            }
            t=t+2;
            printf("\n");
        }
        for(int i=n-1;i>0;i--)//再输出n-1行,过程与上面类似 ,就是将上面的过程反过来 
		{
    
    
			for(int j=0;j<n-i;j++)
			{
    
    
				printf(" ");
			}
			for(int j=t-4;j>0;j--)
			{
    
    
				printf("*");
			}
			t=t-2;
			printf("\n");
		}
        
    }
    return 0;
}

猜你喜欢

转载自blog.csdn.net/Autumn_snow/article/details/116658743
今日推荐