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
代码语言:javascript复制X X
X
X X
X X
X X
X
X X
X X
我是将输出分成3部分来思考的。这样容易解决问题一些。 你们看我代码很容易理解的。
代码语言:javascript复制import java.util.Scanner;
/**
* @author 陈浩翔
* 2016-6-5
*/
public class Main{
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int t=sc.nextInt();
while(t-->0){
int n=sc.nextInt();
int m=n/2 1;//中间值
for(int i=1;i<m;i ){
for(int a=1;a<i;a ){
System.out.print(" ");
}
System.out.print("X");
for(int a=1;a<=n-i*2;a ){
System.out.print(" ");
}
System.out.print("X");
System.out.println();
}
for(int i=1;i<m;i ){
System.out.print(" ");
}
System.out.print("X");
System.out.println();
for(int i=m-1;i>=1;i--){
for(int a=1;a<i;a ){
System.out.print(" ");
}
System.out.print("X");
for(int a=1;a<=n-i*2;a ){
System.out.print(" ");
}
System.out.print("X");
System.out.println();
}
System.out.println();
}
}
}