请你编程画一个放大的‘X’。
如3*3的‘X’应如下所示:
X X
X
X X
5*5的‘X’如下所示:
X X
X X
X
X X
X X
输入格式
输入数据第一行是一个整数T,表示有T组测试数据。
接下来有T行,每行有一个正奇数n(3<=n<=79),表示放大的规格。
输出
对于每一个n打印一个规格为 n*n 放大的‘X’,每组输出后面空一行。
样例输入
2
3
5
样例输出
X X
X
X X
X X
X X
X
X X
X X
import java.util.Scanner;
public class Main{
public static void main(String[] args){
Scanner input=new Scanner(System.in);
int T = input.nextInt();
for(int num=0;num<T;num++){
int N=input.nextInt(),n1,n2;
char[][] x=new char[N][N];
if(N>=3 && N<=79){
for(n1=0;n1<x.length;n1++)
for(n2=0;n2<x[n1].length;n2++){
if(n1==n2 || n1+n2==N-1)
x[n1][n2]='X';
else
x[n1][n2]=' ';}
for(n1=0;n1<x.length;n1++){
for(n2=0;n2<x[n1].length;n2++)
System.out.print(x[n1][n2]+" ");
System.out.println();}
System.out.println();
}
}
}
}
为什么说输出超限?
代码中文字丢失了。for循环都不对了,缩进也没有了。
请你点回复帖子的工具栏上的代码,然后把代码输入到两对引号中间。
char[][] x=new char[N][N];
这里不能这么定义,你可以用二维数组
char[,] x = new char[N,N];
数 组 下 标越界了吧
我测试了一下你的代码没有问题啊,你输入什么数据显示输出超限?