畫8

       畫8
Time Limit:1000MS     Memory Limit:32768KB     64bit IO Format:%I64d & %I64u


Description
誰畫8畫的好,畫的快,今後就發的快,學業發達,事業發達,祝大家發,發,發. 
 
Input
輸入的第一行爲一個整數N,表示後面有N組數據. 
每組數據中有一個字符和一個整數,字符表示畫筆,整數(>=5)表示高度. 
 
Output
畫橫線總是一個字符粗,豎線隨着總高度每增長6而增加1個字符寬.當總高度從5增加到6時,其豎線寬度從1增長到2.
下圈高度不小於上圈高度,但應儘量接近上圈高度,且下圈的內徑呈正方形. 每畫一個"8"應空一行,但最前和最後都
無空行. 
 
Sample Input
2
A 7
B 8 
 
Sample Output
   AA
AA  AA
AA  AA
   AA
AA  AA
AA  AA
   AA


   BBB
BB   BB
BB   BB
   BBB
BB   BB
BB   BB
BB   BB

   BBB 

思路:

 對於這樣的題我認爲就是儘量找規律吧

/*AC*/
#include<stdio.h>
void p1(int s,int h,char a)
{
    int i;
    for (i=0;i<s;i++)
        printf(" ");
    for (i=0;i<h;i++)
        printf("%c",a);
    printf("\n");
    return ;
}
void p2(int s,int h,char a)
{
    int i;
    for (i=0;i<s;i++)
        printf("%c",a);
    for (i=0;i<h;i++)
        printf(" ");
    for (i=0;i<s;i++)
        printf("%c",a);
    printf("\n");
    return ;
}
int main()
{
    int t,flag=0;
    scanf("%d",&t);
    while (t--)
    {
        char ch;
        int g,s,h;
        if (flag)
            printf("\n");
        flag=1;
        scanf("%*c%c %d",&ch,&g);
        s=g/6+1;
        h=g/2-1;
        int i;
        p1(s,h,ch);
        for (i=1;i<=g-2;i++)
        {
            if (i==(g-1)/2)
                p1(s,h,ch);
            else
                p2(s,h,ch);
        }
        p1(s,h,ch);
    }
    return 0;
}


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章