慕粉3733051
2016-08-13 10:36
public class HelloWorld{
public static void main(String[] args){
int num = 999;
int count = 0;
int i=1;
for (count=0;num/i>=0;count++){
i=i*10;
}
System.out.println("它是个"+count+"位的数");
}
}
运行错误,原因是i=0,被除数为0,我不是已给i进行了初始化吗?
不停的实验,自己发现问题的所在是这里for (count=0;num/i>=0;count++){,正确的写法如下:
for (count=0;(num/i)>=0;count++){
另外,刚才看到有楼上所说的count的初始化问题,我第一次写的时候也是直接for (count;num/i>=0;count++){
结果会报错,提示count未初始化,这个问题也是不太明白
前面赋初值,for里面的初始化那里可以不写。num/i>=0改成num/i>0,不然跳不出循环。
为什么要在for里对 count初始化。。在for里对i初始化试试
Java入门第一季(IDEA工具)升级版
1165172 学习 · 17581 问题
相似问题