平泽唯の吉太 2022-11-04 15:25 采纳率: 93.8%
浏览 14
已结题

请问一下能不能讲一下那个循环条件判断

img


i%3如果为0是不是就不执行continue那个while(!i)是怎么看呢?
i本来不是0 !i是0吗?
请解释一下流程谢谢

  • 写回答

2条回答 默认 最新

  • 於黾 2022-11-04 15:39
    关注

    一层一层看
    i从2开始,i<5,所以i取值2,3,4
    内层循环,while(!i),由于i始终大于0,所以!i一直返回0,这就是个迷惑项,不用管它
    因为是do,while循环,至少执行一次,所以你把do。。。while删掉就行了,就是执行一次
    相当于每次循环执行两次n++
    那么再分析到i%3,就需要从头分析了
    当i==2时,执行了continue,那么while循环里的n++就不会执行了,只执行后面的n++
    当i==3时,没有执行continue,所以执行2次n++
    当i==4时,又执行了conitnue,所以只执行一次n++,一共执行了4次,n初始是0,执行4次n++,所以最终n的值是4

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 11月13日
  • 已采纳回答 11月5日
  • 创建了问题 11月4日