5

因为我真的很喜欢编程,而且我喜欢在空闲时间编程,所以我试图创建一个输出看起来像 x 的代码。像这样的东西。

x    x
 x  x
  x
 x  x
x    x

所以我希望用户输入“x”的高度。这是我到目前为止的代码,我真的不知道如何继续。我只需要一个提示,或者是否有人可以告诉我我哪里出错了。

import java.util.Scanner;    
    public class x{
    public static void main(String[] args){
    Scanner kbd = new Scanner(System.in);
    int height;    
    System.out.print("Enter the height of the X:   " );             
    height = kbd.nextInt();
    for (int i = 1; i <= height; i++){                        
      for (int j = 1; j <= height; j++) {                            
        if(i ==j || j+i == height + 1)                               
            System.out.println("x");                            
        else                            
            System.out.print(" ");
      }
    }
  }
}
4

3 回答 3

5

两个变化:

  • 更改System.out.println("x");System.out.print("x"); (打印后删除 ln)

  • 在这两行之后

        System.out.print(" ");
    }
    

    添加

    System.out.println();
    
于 2013-04-26T17:24:42.270 回答
0
 for (int i = 0; i < height; i++){                        
    for (int j = 0; j < height; j++) {                            
        if(i == j || j + i == height - 1)                               
            System.out.print("x");                            
        else                            
            System.out.print(" ");
    }
    System.out.println();
 }
于 2013-04-26T17:29:27.187 回答
0

这对我来说适用于 X 的奇数和偶数高度:

import java.util.Scanner;  
public class x{
    public static void main(String[] args){
    Scanner kbd = new Scanner(System.in);
    int height;    
    System.out.print("Enter the height of the X:   " );             
    height = kbd.nextInt();
    for (int i = 0; i <= height; i++){                        
      for (int j = 0; j <= height; j++) {                            
        if( (i ==j && i!=0 ) || j+i == height + 1) //needed to check for i or j !=0
            System.out.print("x"); //this shouldn't be println             
        else                            
            System.out.print(" ");
      }
      System.out.println(); //you needed this
    }
  }
}
于 2013-04-26T17:46:35.110 回答