思路
打印图形,分正方形和菱形
坑点
正方形简单
菱形分两个部分打印,控制空格就行,记得换行。
代码
#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;
}