前言:
本篇博客将带大家了解如何正序、倒序输出一个数的各个位上的数字
目录
倒序输出一个数的各个位上的数字
思路:
以123这个数为例,如果是按照倒叙输出的话,就是输出321。由此,我们很容易能想到:
123%10=3
12%10=2
1%10=1
想到这些以后,我们只需要思考如何从123变到12,如何从12变到1。答案显而易见,除以10。综上,要想实现倒序输出一个数(假设为n)的各个位上面的数字,要先n%10,再n/10,直到n变成0。
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
//输入待倒序输出的数字:
System.out.println("请输入待倒序输出的数字:");
Scanner scanner = new Scanner(System.in);
int n = scanner.nextInt();
//进行操作:
while(n != 0){
System.out.print(n % 10+" ");
n /= 10;
}
}
}
结果:
正序输出一个数的各个位上的数字
import java.util.Scanner;
public class Main {
public static void func(int n){
if(n <= 9){
System.out.print(n+" ");
return ;
}
func(n/10);
System.out.print(n%10+" ");
}
public static void main(String[] args) {
//输入待正序输出的数字:
System.out.println("请输入待正序输出的数字:");
Scanner scanner = new Scanner(System.in);
int n = scanner.nextInt();
//进行正序输出:
func(n);
}
}
代码解释:
令n=1234:
先判断n是否小于等于9,显而易见,n>9
于是进入第二步:func(n/10);
以此类推。如下图:
结果: