输入格式
只有一个正整数n(0 < n < 20),代表正六边形的边长。
输出格式
是一个边长为n的正多边形。
Sample Input 1
5
Sample Output 1
*****
* *
* *
* *
* *
* *
* *
* *
*****
#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
int main()
{
int n,j,i;
scanf_s("%d", &n);
//第一行
for (j = 0; j < n; j++)
{
if (j == 0)
{
for ( i = 0; i < n - 1; i++)
{
printf(" ");
}
}
printf("#");
}
printf("\n");
//第2行到第5行
for (i = 2; i <=n; i++)
{
for (j = 0; j < n - i; j++)//n-i每加一行少一个空格;
{
printf(" ");
}
printf("#");
for (int m = 0; m < n + 2 * i - 4; m++)//每一行都要比前一行多两个;每一行都要比第一行多0 2 4 6
{
printf(" ");
}
printf("#");
printf("\n");
}
//第六行到九行;
for (i = n-1; i >= 2; i--)
{
for (j =i; j<n; j++)//每一次i减一;就多打印一个空格;
{
printf(" ");
}
printf("#");
for (int m = n+2*i-4; m > 0; m--)//每一行比前一行少俩空;
{
printf(" ");
}
printf("#");
printf("\n");
}
//最后一行;
for (j = 0; j < n; j++)
{
if (j == 0)
{
for (i = 0; i < n - 1; i++)
{
printf(" ");
}
}
printf("#");
}
return 0;
}