34: 放大的X

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("\n");
		} 
         printf("\n");
	}
	return 0;
}
posted @ 2020-03-04 12:29  RabbitJwr  阅读(294)  评论(0编辑  收藏  举报