我的代碼只打印出一條直線,而我處于空白狀態。有人可以向我解釋一下我將如何做這個項目嗎?public class assigment04 { public static void main(String[] args) { int size = 5; for (int row = 0; row < size; row++) { for (int column = 1; column <= size; column++) { if (row == column || column == (size + 1 - row)) { System.out.println("*"); } else { System.out.print(" "); } System.out.println(); } } }}
1 回答

MMTTMM
TA貢獻1869條經驗 獲得超4個贊
我在您的代碼中看到三個錯誤:
你在每個之后打印一個換行符
*
您在每個字符后打印換行符,而不是每行
差一錯誤導致
*
打印位置不正確
這是更正后的版本:
public class assignment04 {
? ? public static void main(String[] args) {
? ? ? ? int size = 5;
? ? ? ? for (int row = 0; row < size; row++) {
? ? ? ? ? ? for (int column = 0; column < size; column++) {
? ? ? ? ? ? ? ? if (row == column || column == (size - row - 1)) {
? ? ? ? ? ? ? ? ? ? System.out.print("*");
? ? ? ? ? ? ? ? } else {
? ? ? ? ? ? ? ? ? ? System.out.print(" ");
? ? ? ? ? ? ? ? }
? ? ? ? ? ? }
? ? ? ? ? ? System.out.println();
? ? ? ? }
? ? }
}
運行示例:
$ javac assignment04.java?
$ java assignment04
*? ?*
?* *?
? *??
?* *?
*? ?*
添加回答
舉報
0/150
提交
取消