qq_Mr郭生_0
2015-08-11 11:38
答案的代码看得不是很懂,有人能说下流程吗?
public class HelloWorld{ public static void main(String[] args){ int num = 999; int count = 0; if (num >= 0 && num<=999999999){ //当num大于等于0并且小于等于999999999 while(num != 0){ // 如果num不等于0 count++; //count自增1 num/=10; //num除以10并赋值给num } System.out.println("它是个"+ count+"位的数!"); } else{ System.out.println("输入有误!"); } } }
这里主要要明白while循环语句。当满足条件时进入循环,不满足跳出。这里即如果num不等于0,即满足条件,那么执行循环。count是用来计算循环次数的。
如本例:
num为999,它满足不等于0,执行循环,
第一次循环count自增1等于1,999除以10等于99。(注:因为num是int型,所以除后得到的数字还是int型。)
99满足不等于0,执行循环,
第二次循环count自增1等于2,99除以10等于9。
9满足不等于0,执行循环,
第三次循环count自增1等于3,9除以10等于0。
0不满足不等于0,跳出循环。
明白了,我刚才也还在想是不是要取整的问题,谢谢你的回答
Java入门第一季(IDEA工具)升级版
1167575 学习 · 18748 问题
相似问题