erchui003 2023-01-15 17:25 采纳率: 80%
浏览 42
已结题

以下代码片段执行结束后,变量i的值是多少?

以下代码片段执行结束后,变量i的值是多少?

int i =10;
while ( i>0 ) {
i /=2;
}

正确答案:0
我填的是5。我不懂正确答案是怎么来的。我先说我填5的思路。因为i=10,i/=2.我就直接把10除以2得5了。

正确答案是不是可以这么理解。因为我上课有看到一个For循环原理
for(i=0;i<n;i++)
循环的次数是n,而循环结束以后,i的值是n。

while循环是否可以套用这个理论

  • 写回答

2条回答 默认 最新

  • heart_6662 2023-01-15 17:29
    关注

    望采纳!!!点击回答右侧采纳即可!!
    对于这个题目,变量i的值为0,因为while循环中的条件i>0一直成立,所以会一直执行循环体中的语句,每次循环i都会被除以2,当i变为1时,i/2=0,此时while循环的条件不满足,循环结束,此时i的值为0。
    while循环也可以套用这个理论。while循环的次数是取决于循环条件,而循环结束以后,i的值是循环条件不满足时的值。在上面的代码片段中,循环条件是i>0,而当i=0时,循环条件不满足,因此循环结束,i的值为0。

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

报告相同问题?

问题事件

  • 系统已结题 1月23日
  • 已采纳回答 1月15日
  • 修改了问题 1月15日
  • 创建了问题 1月15日

悬赏问题

  • ¥500 52810做蓝牙接受端
  • ¥15 基于PLC的三轴机械手程序
  • ¥15 多址通信方式的抗噪声性能和系统容量对比
  • ¥15 winform的chart曲线生成时有凸起
  • ¥15 msix packaging tool打包问题
  • ¥15 finalshell节点的搭建代码和那个端口代码教程
  • ¥15 Centos / PETSc / PETGEM
  • ¥15 centos7.9 IPv6端口telnet和端口监控问题
  • ¥20 完全没有学习过GAN,看了CSDN的一篇文章,里面有代码但是完全不知道如何操作
  • ¥15 使用ue5插件narrative时如何切换关卡也保存叙事任务记录