首页 > 代码库 > 放大的X 【杭电-2655】 附题
放大的X 【杭电-2655】 附题
/*
放大的X
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 8866 Accepted Submission(s): 2678
Problem Description
请你编程画一个放大的’X’。
如3*3的’X’应如下所示:
X X XX X5*5的’X’如下所示:X X X X X X XX 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<stdio.h>
//#include<string.h>
int main(){
int n,m,i,j,k;
int T;
char str[85][85]={0};
scanf("%d",&T);
//memset(str,0,sizeof(str));
while(T--){
scanf("%d",&n);
for(i=1;i<=n;i++){
for(j=1;j<=n;j++){
if(j==i || j==n+1-i)
str[i][j]=‘X‘;
else
str[i][j]=‘ ‘;
}
}
for(i=1;i<=n/2;i++){
for(j=1;i<=n;j++){
if(i+j>n+1)
break;
printf("%c",str[i][j]);
}printf("\n");
}
for(;i<=n;i++){
for(j=1;j<=i;j++){
printf("%c",str[i][j]);
}
printf("\n");
}
printf("\n");
}
//while(1);
return 0;
}