Problem Description
SDUTACM校赛已经举办到第十届了,传说中的UMR学姐为了表达对于ACM的喜爱,他决定输出高度为N的ACM图案(详情请看样例)
Input
第一行输入一个正整数N(保证N为偶数)。
1 <= N <= 10
Output
输出高度为N的ACM图案,每个字母间的最小距离(底部)为两个空格,C的高度和宽度都为N,A中"_"的位置为N/2, 用到的字符都有"_”,"|","","/"
Sample Input
4
Sample Output
____
/ | | /|
/__ | | / |
/ | | / |
/ |____ | / |
此题特判一下2就好
#include <stdio.h>
int main()
{
int n,i,j;
scanf("%d",&n);
if(n==2)
{
printf(" __
");
printf(" /_\ | |\ /|
");
printf("/ \ |__ | \/ |
");
}
else
{
for(i=1; i<=2*n+3; i++)
printf(" ");
for(i=1; i<=n; i++)
printf("_");
puts("");
for(i=1; i<=n; i++)
{
for(j=1; j<=n-i; j++)
printf(" ");
printf("/");
if(i==n/2)
{
for(j=1; j<=2*(i-1); j++)
printf("_");
}
else
{
for(j=1; j<=2*(i-1); j++)
printf(" ");
}
printf("\");
for(j=1; j<=n-i+2; j++)
printf(" ");
printf("|");
if(i!=n)
{
for(j=1; j<=n; j++)
printf(" ");
}
else
{
for(j=1; j<=n; j++)
printf("_");
}
for(j=1; j<=2; j++)
printf(" ");
printf("|");
for(j=1; j<=i-1; j++)
printf(" ");
printf("\");
for(j=1; j<=2*(n-i); j++)
printf(" ");
printf("/");
for(j=1; j<=i-1; j++)
printf(" ");
printf("|");
puts("");
}
}
return 0;
}