2565放大的X(hdu)

/*
放大的X
Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 5732    Accepted Submission(s): 1747


Problem Description
请你编程画一个放大的’X’。
如3*3的’X’应如下所示:

X X XX X5*5的’X’如下所示:X   X X X  X X XX   X
 

Input
输入数据第一行是一个整数T,表示有T组测试数据;
接下来有T行,每行有一个正奇数n(3 <= n <= 79),表示放大的规格。

 

Output
对于每一个n打印一个规格为n * n放大的’X’;每组输出后面空一行。
 

Sample Input
2
3
5 
 

Sample Output
X X
 X
X X

X   X
 X X
  X
 X X
X   X

*/
#include<iostream>
using namespace std;
int main()
{
    int T,n,t,i;
    char X='X';
    scanf("%d",&T);
    while(T--)
    {
        scanf("%d",&n);
        for(t=0;t<n/2;t++)
        {
            for(i=0;i<t;i++)
                cout<<" ";
            cout<<X;
            for(i=0;i+2*t<n-2;i++)
                cout<<" ";
            cout<<X;
            cout<<endl;
        }
        for(i=0;i<n/2;i++)
            cout<<" ";
        cout<<X<<endl;
        for(t=n/2-1;t>=0;t--)
        {
            for(i=0;i<t;i++)
                cout<<" ";
            cout<<X;
            for(i=0;i+2*t<n-2;i++)
                cout<<" ";
            cout<<X;
            cout<<endl;
        }
        cout<<endl;
    }
    return 0;
}

 

posted @ 2012-11-24 23:54  myth_HG  阅读(681)  评论(0编辑  收藏  举报