34 放大的X
作者: xxx时间限制: 1S章节: 循环
问题描述 :
请你编程画一个放大的’X’。
如2*2的’X’应如下所示:
5*5的’X’如下所示:
输入说明 :
输入数据第一行是一个整数T,表示有T组测试数据;
接下来有T行,每行有一个正数n(2 <= n <= 80),表示放大的规格。
输出说明 :
对于每一个n打印一个规格为n * n放大的’X’;每组输出后面空一行。
注意:每一行输出的字符X为大写的'X',第一行的最前与最后都无空格,每行的最后都无空格。
输入范例 :
3
2
5
8
输出范例 :
代码:
#include <stdio.h>
int main()
{
int n, m;
scanf("%d", &n);
int cur = 0;
for (int k = 0; k < n; k++)
{
scanf("%d", &m);
for (int i = 0; i < m; i++)
{
for (int j = 0; j < m; j++)
{
if (i == j || i + j == m - 1)
{
printf("X");
cur++;
}
else
{
if (cur < 2)
{
if (m % 2 == 1 && i == m / 2)
{
if (cur == 1)
{
break;
}
}
printf(" ");
}
}
}
cur = 0;
printf("
");
}
printf("
");
}
return 0;
}