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