为了账号安全,请及时绑定邮箱和手机立即绑定

for的问题

int num = 999;

int count = 0;

for(count=1;(num/=10)>0;count++);{


   System.out.print("它是个"+count+"位的数");

}

为什么System.out.print("它是个"+count+"位的数");只执行一次!不是应该执行3次吗?

正在回答

3 回答

  for(count=1;(num/=10)>0;count++);{    //for()后面多了分号,把分号去掉就好了

    System.out.print("它是个"+count+"位的数");

 }


采纳哟哟哟哟


0 回复 有任何疑惑可以回复我~
#1

慕粉0821321611 提问者

非常感谢!
2016-11-19 回复 有任何疑惑可以回复我~

你这个代码实际上count的值是3,但是循环只做了两次。第一次num=99,第二次num=9,第三次的时候num=0,不再执行for循环。另外你for()后面多了个分号,表示你for()在;那结束,所以只打印了一次“它是个3位数”,如果想打印三次的话,请参考下面语句

int num = 999;

int count = 0;

for(count=1;num>0;count++){

num/=10;  //在for语句中执行num的运算,避免最后一次循环不执行

  System.out.print("它是个"+count+"位的数");

}

0 回复 有任何疑惑可以回复我~

      int num = 999;

      int count = 0;

      do{

              count++;

              num = num/10;

      }while(num>0);



      System.out.println("它是个"+count+"位的数!");


0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
Java入门第一季(IDEA工具)升级版
  • 参与学习       1165225    人
  • 解答问题       17581    个

0基础萌新入门第一课,从Java环境搭建、工具使用、基础语法开始

进入课程

for的问题

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信