C语言编程练习2:放大的X

#include <iostream>

using namespace std;
#include <iostream>

int main()
{
	int n;//测试数据组数
	cin >> n;
	while(n --)
	{
		int m;
		cin >> m;//输入测试的奇数
		for(int i = 0;i < m;++ i)
		{
                        //除了中间一行,其他行都有2个x
			int nPos1 = i;//第一个x位置
			int nPos2 = m - i - 1;//第二个x位置
			int nCount = 0;
			for(int j = 0;j < m;++ j)
			{
				if(j == nPos1 || j == nPos2)//如果在第一个x或者第二个x位置就输出x
				{
					++ nCount;
					cout << "X";
					if(2 == nCount)//最多输出2个x。输完跳出此次循环
					{
						break;
					}
					if(nPos1 == nPos2)//如果第一个x位置与第二个x位置相同则跳出
					{
						break;
					}
				}
				else
				{
					cout << " ";//其他位置输出空格
				}
			}
			cout << endl;//输出一行x后换行
		}
		cout << endl;//输出一组放大的x后换行
	}

	return 0;
}            

 

posted @ 2021-01-19 20:37  FantasticDoulbeFish  阅读(859)  评论(0编辑  收藏  举报