正序、倒序输出一个数的各个位上的数字

前言:

本篇博客将带大家了解如何正序、倒序输出一个数的各个位上的数字


目录

倒序输出一个数的各个位上的数字

倒序输出一个数的各个位上的数字


倒序输出一个数的各个位上的数字

思路:

以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);

以此类推。如下图:

 结果:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值