Problem Description
请你编程画一个放大的’X’。
如3*3的’X’应如下所示:
X X
X
X X
5*5的’X’如下所示:
X X
X X
X
X X
X 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>
int main(int argc, const char *argv[])
{
int n;
std::cin >> n;
while(n --)
{
int m;
std::cin >> m;
for(int i = 0;i < m;++ i)
{
int nPos1 = i;
int nPos2 = m - i - 1;
int nCount = 0;
for(int j = 0;j < m;++ j)
{
if(j == nPos1 || j == nPos2)
{
++ nCount;
std::cout << "X";
if(2 == nCount)
{
break;
}
if(nPos1 == nPos2)
{
break;
}
}
else
{
std::cout << " ";
}
}
std::cout << std::endl;
}
std::cout << std::endl;
}
return 0;
}