陌上花开65 2023-12-16 20:59 采纳率: 90%
浏览 4
已结题

关于while的疑惑

下列程序的输出结果是( )。

int main()

{

  int i=6;

  while(i--)

      printf("%d",--i);

 printf("\n");

 return 0;

}
输出结果为什么是420啊

  • 写回答

1条回答 默认 最新

  • 2301_80408265 2023-12-16 21:31
    关注

    6进入循环判断,因为是i--,所以先执行判断后自减!此时先判断6是否符合条件,显然是符合的,i完成判断后再自减为5,进入循环体!所以i进入printf之前i就变成了5,最后输出--i后的值!依次类推直到while表达式为假,退出循环输出换行结束程序

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 12月16日
  • 已采纳回答 12月16日
  • 创建了问题 12月16日

悬赏问题

  • ¥15 访问url时不会自动调用其 Servlet的doGet()
  • ¥15 用白鹭引擎开发棋牌游戏的前端为什么这么难找
  • ¥15 MATLAB解决问题
  • ¥35 哪位专业人士知道这是什么原件吗?哪里可以买到?
  • ¥15 关于#c##的问题:treenode反序列化后获取不到上一节点和下一节点,Fullpath和Handle报错
  • ¥15 一部手机能否同时用不同的app进入不同的直播间?
  • ¥15 没输出运行不了什么问题
  • ¥20 输入import torch显示Intel MKL FATAL ERROR,系统驱动1%,: Cannot load mkl_intel_thread.dll.
  • ¥15 点云密度大则包围盒小
  • ¥15 nginx使用nfs进行服务器的数据共享