武汉科技大学ACM :1001: 华科版C语言程序设计教程(第二版)课后习题3.12

Problem Description

输入n,输出对应的边长为n的空心正六边形。

为方便看图,样例中点 '.' 表示空格,打印图形时请打印空格而非小圆点。

Input

边长n.(n<=20)

Output

边长为n的正六边形

Sample Input

5

Sample Output

.....*****
....*.....*
...*.......*
..*.........*
.*...........*
..*.........*
...*.......*
....*.....*
.....*****
 #include<stdio.h>
#include<math.h>
void prt(char c, int count)
{
while(count--)
{
printf("%c",c);
}
} int main()
{
int N, L;
while(scanf("%d",&N)!=EOF)
{
if(N> && N<=)
{
L=;
for(; L < * N - ; L++)
{
prt(' ', );
prt(' ', abs(N - L-)); if( == L || L == * N - )
{
prt('*', N);
}
else
{
prt('*', );
prt(' ', * N - -(abs(L+ - N) * ));
prt('*', );
}
printf("\n");
}
}
}
return ;
}
上一篇:更多more 123123循环


下一篇:手把手教你搭建深度学习平台——避坑安装theano+CUDA