import javax.swing.JOptionPane;
public class test {
public static void main(String[] args) {
String inputString;
int n;
int product = 1;
int digit;
inputString = JOptionPane.showInputDialog ("Enter an int:");
n = Integer.parseInt (inputString);
while (n > 0) {
digit = n % 10;
n = n / 10;//这个是取除,什么意思呢?
product = product * digit;
}
System.out.println ("The check product = " + product);//当我输入123 的时候 执行结果是 6呢? 题目上面取123%10 = 3 对不? 123/10=12对不? 所以执行结果应该是3*12 对不? 但是执行结果是6呢?
System.out.println ("\n*** End of Processing ***");
}
}
java分析代码
答案:2 悬赏:0 手机版
解决时间 2021-05-04 02:10
- 提问者网友:暗中人
- 2021-05-03 04:43
最佳答案
- 五星知识达人网友:春色三分
- 2021-05-03 05:13
digit = n % 10;//求出个位的数字
n = n / 10;//既然上面是求出个位的数字,则/10是求出十位数的数字,再/10是求出百位数的数字!
由你的while循环可以看出是求出百位数,十位数,个位数上数字相乘,即1*2*3=6!
你说的:n =123/10=12对不?对!接下去还要循环!digit == n % 10 == 12 % 10 == 2 ....
全部回答
- 1楼网友:人间朝暮
- 2021-05-03 06:05
n = 123, n = 12, n = 1
digit = 3, digit = 2, digit = 1,
product = 1 * 3, product = product * 2 = (1 * 3) * 2, product = product * 1 = 1 * 3 * 2 *1
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯