我的代码编译,但它没有输出我想要的内容。
import java.util.Scanner;
public class Checkerboard {
public static void main(String[] args) {
int num, col;
//Scanner for input
Scanner keyboard = new Scanner(System.in);
//Get input
System.out.println("Enter a number: ");
num = keyboard.nextInt();
System.out.println("Enter the same number: ");
col = keyboard.nextInt();
for (int n = 0; n < num; n++) {
for (int c = 0; c < col; c++) {
System.out.print("* ");
}
System.out.println(" ");
}
}
}
正在输出模式 (如果N,C = 5)
* * * * *
* * * * *
* * * * *
* * * * *
* * * * *
我想要的是
* * * * *
* * * * *
* * * * *
* * * * *
* * * * *
关于如何输出我想要的内容的任何提示?
答案 0 :(得分:4)
插入
if(n%2==0){
System.out.print(" ");
在内循环之前。
答案 1 :(得分:2)
目前,您在行的末尾添加空格而不是在下一行的开头添加空格,无论如何,您只想添加不在每一行上的空格,而只添加任何其他行。
for (int n = 0; n < num; n++) {
if (n % 2 == 0) {
System.out.print(" ");
}
for (int c = 0; c < col; c++) {
System.out.print("* ");
}
System.out.println();
}
答案 2 :(得分:1)
只需将内部for
循环更改为
if(n%2==0){
System.out.print(" *");
} else {
System.out.print("* ");
}
Out put:
* * * * *
* * * * *
* * * * *
* * * * *
* * * * *
答案 3 :(得分:0)
更改内部for循环:
if(n%2==0){
System.out.print(" *");
} else {
System.out.print("* ");
}