我是编程新手,希望可以获得一些指导,我搜索了线索,但没有运气。 我写了一个二维数组的代码,我的问题是我不能得到行和列号与元素一起显示...这是我最接近的 现在输出是;
T F F T F F
0 F F T F F T
1 F T F F T F
2 T F F T F F
3 F F T F F T
4 F T F F T F
5
我需要输出;
0 1 2 3 4 5
0 T F F T F F
1 F F T F F T
2 F T F F T F
3 F F T F F T
4 F T F F T F
5 T F F T F T
这是代码: public class Array {
public static void main(String[] args) {
System.out.print(" ");
boolean [][] a;
int N = Integer.parseInt(args[0]);
a = new boolean [N][N];
for (int i = 0; i<a.length;i++){
for (int j = 0; j<a[0].length;j++){
a[i][j] = true;
int sum = (i+j);
if (sum%3==0) {
System.out.print( "T " );
} else {
System.out.print( "F ");
}
}
System.out.println();
System.out.print(i + " ");
}
}
}
感谢您的帮助。
答案 0 :(得分:3)
此代码未生成此输出(您显然没有粘贴所有代码)。
但是,您的基本问题是在行数据之后输出行号。改变它,你会更接近。
输出一个特殊的“标题行”,你会更接近。
学习编程祝你好运!
提示:你在这里问的越少,并试图找出自己,你将学到更好,更快。
答案 1 :(得分:1)
在您的代码中,您已经一次打印一行,因此将行号附加到每行的开头(即,在打印任何值之前)是微不足道的。
至于列,您需要记住System.out
只能从左到右打印,而不能上下打印。因此,在打印阵列的其余部分之前,您需要打印库仑数字。
请参阅此代码中的评论:
public static void main(String[] args) {
boolean [][] a;
int N = Integer.parseInt(args[0]);
a = new boolean [N][N];
System.out.print(" "); //print the spacer for the row numbers
for (int i = 0; i < N; i++){
System.out.print(i + " "); //print the column number
}
for (int i = 0; i<a.length;i++){
System.out.print("\n" + i + " "); //new line plus row number
for (int j = 0; j<a[0].length;j++){
a[i][j] = true;
int sum = (i+j);
if (sum%3==0) {
System.out.print("T ");
} else {
System.out.print("F ");
}
}
}
}
另外,你的缩进和支架使用有点乱(正如其他人所说)。看看我的代码。看看for循环开始的位置是多么容易,结束了吗?看看里面有什么是容易的吗?