慕粉3988924
2016-09-20 20:10
public class HelloWorld{
public static void main(String[] args){
int num = 999;
int count = 0;
int i=0;
for(;i<=10;i++){
if(num<count){
break;
}
count=10^(i+1);
}
System.out.println("它是个"+i+"位的数!");
}
}
求大神看看这有没有什么问题,为什么我运行出来是“它是个11位的数!”
^是二进制的亦或运算 10^1=00001010^00000001=00001011=11
你的count赋值有问题,这时候,你可以count=10^(i+1)下面输出count的值,看是否符合自己心中所想。如果直接在你的那里改的话,把 count=10^(i+1);换成count=(int) Math.pow(10,i+1);就可得到你心中想要的答案。建议不要操之过急。
^是二进制的亦或运算 10^1=00001010^00000001=00001011=11
同意
if没有正常运行,我以室友的头发担保
Java入门第一季(IDEA工具)升级版
1165172 学习 · 17581 问题
相似问题