文章目录
能解决题目的代码并不是一次就可以写好的
我们需要根据我们的思路写出后通过debug模式找到不足再进行更改
多次测试后才可得到能解决题目的代码!
通过学习,练习【Java基础经典练习题】,让我们一起来培养这种解决问题思路。
一、视频讲解
【视频+图文】Java经典基础练习题(四)键盘输入一个正整数,获取这个正整数的每一位并将其输出
二、思路分析
Q1: 如何从键盘输入3个整数?
A1: 键盘输入需使用Scanner语句,使用Scanner语句需以下4步骤
- 导包(可以在第二步创建后按住“Ctrl+shift+O”来自动导包)
import java.util.Scanner; - 创建 Scanner sc = new Scanner (System.in); (sc是对象的名字,只要符合命名规则可更换)
- 使用(这里介绍的是最简单是使用方法)
(1) 获取键盘输入的int型数字 int num = sc.nextInt();
(2) 特殊: 获取键盘输入的字符串 String str = sc.next(); - 使用完毕,关闭键盘输入 sc.close();(即对象名.close())
Q2: 如何获得输入正整数的每一位?
A2: 这里我们需要用到除运算符(“/”)和取余运算符(“%”)
除运算法(“/”)得到的结果为两数之商 | 取余运算符(“%”)得到的结果为两数相除的余数 |
---|---|
eg:A/B=商 | eg:A%B=A/B的余数 |
了解了以上两个运算符,我们来用一个例子具体讲解一下
获取输入正整数的每一位的步骤:(以12345为例)
-
第一步:取出个位5:
我们发现:12345%10=5
(这里我们用数学来思考12345÷10=1234…5。此过程用计算机实现就需要用“%”) -
第二步:取出十位4:
【这时候你可能会说,小乔我知道啦!用12345%100就可以得到十位数4但实际不是。我们来看看:12345÷100=123…45 所以这里的余数是45并不是4】经过观察我们发现:
1234%10=4(1234÷10=123…4)(1234的由来: 1234=12345/10) -
第三步:取出百位3:(还是运用取出十位2的规律)
123%10=3(123÷10=12…3)(123的由来:123=1234/10)
-
第四步:取出千位2:(还是运用取出百位3的规律)
12%10=2(12÷10=1…2)(12的由来:12=123/10)
-
第五步:取出万位1:(还是运用取出千位2的规律)
1%10=1(1÷10=0…1)(1的由来:1=12/10)
到此我们整数的每一位就都取出来了
我们根据上面的式子总结规律:
- 规律:
- 先用输入的正整数num与10取余,