我是个编程新手。我被要求做一个代码,它在下降和垂直位置打印一个数字。下面是我的代码:
import java.util.Scanner;
class Main{
public static void main (String args []){
Scanner input = new Scanner (System.in);
int r=0,ascend=0;
int number=input.nextInt();
while(number>0) {
r= number%10;
number= number/10;
ascend= (ascend*10)+r;
}
System.out.println(ascend + "\n");
ascend++;
}
}但是,当我输入:214时
产出如下:
412我该怎么做才能像下面这样转换输出呢?
4
1
2发布于 2021-05-26 19:03:23
你可以试试这个。
它基本上与您的相同,打印进入循环并打印每个数字:
import java.util.Scanner;
class Main {
public static void main (String args []) {
Scanner input = new Scanner(System.in);
int r = 0;
int number = input.nextInt();
while(number > 0) {
r = number % 10;
number /= 10; // assignment operator shorthand for number = number / 10;
System.out.println(r);
}
}
}发布于 2021-05-26 19:06:07
您需要将println放在循环中。这样,您就可以删除ascend变量。使用println,您还可以免费获得新的行字符。
Scanner input = new Scanner(System.in);
int r = 0;
int number = input.nextInt();
while (number > 0) {
r = number % 10;
number = number / 10;
System.out.println(r);
}https://stackoverflow.com/questions/67711130
复制相似问题