2017-03-02 32 views
0

我需要使用Java语言编写的代码,需要在用户输入(“X”为整数,然后从1打印数起的“X”。然后,在下一行的帮助下,它递增一次,并打印“X”更。数字再次时代的“X”号我试图嵌套的for循环它使用下面是输出应该如何:如何在java中根据用户输入的整数打印数字?

如果用户输入4,输出应该是:

1234 
2345 
4567 
5678 

如果用户输入5,那么:

12345 
23456 
34567 
45678 
56789 

这是我的代码已经迄今为止写的:

// start of code 
public static void main(String[] args) { 
    Scanner in = new Scanner(System.in); 
    System.out.print("Enter number: "); 
    int x = in.nextInt(); // initial number entered by user to repeat it 

    for (int i = 1; i <= x; i++) { 
     System.out.print(i + " "); 
     int j = i + 1; 

     for (int a = j; a <= j; a++) { 
      // System.out.println(); 
      System.out.print(a + " "); 
     } 
    } 

} // end of main 

感谢您的阅读我的问题,这是我第一次在这里张贴问题,所以我还是新的张贴在这里的代码。希望我做得很好。

+0

您的代码是否工作?它是否编译?它打印错误的结果吗?它是否会抛出异常?不要让我们猜你在问什么。 – shmosel

+0

是代码编译和输出为:1 2 2 3 3 4 4 5 5 6,对于用户输入的 “5” –

+1

多少次你认为'对(INT一个= j的;一个<= j的;一个++ )'会迭代? – shmosel

回答

0

我不能现在就测试代码,但我认为你正在寻找与此类似。

for (int i = 1; i <= x; i++) { 
    for (int j = i; j < x+i; j++) { 
     System.out.print(j); 
    } 
    System.out.print(" "); 
} 

你只需要改变你的嵌套循环的一个,我写

+0

谢谢,它的工作原理。 –

0

我真的不明白你在找什么。但这是我明白的:

public static void main(String args[]) { 
    Scanner in = new Scanner(System.in); 
    System.out.print("Enter number: "); 
    int x = in.nextInt(); //initial number entered by user to repeat it 

    for (int i = 1; i <= x; i++) { 
     System.out.print(i + " "); 
     int j = in.nextInt(); 
     System.out.println(j); 
    } 

} 
相关问题