永发信息网

请问为什么这道C语言的题目结果是-2,

答案:2  悬赏:50  手机版
解决时间 2021-01-29 16:02
  • 提问者网友:浩歌待明月
  • 2021-01-28 23:31
请问为什么这道C语言的题目结果是-2,
最佳答案
  • 五星知识达人网友:归鹤鸣
  • 2021-01-29 00:53
这个题目旨在考察++这个运算符,它执行的时候,将自增之前的值作为表达式的结果,然后,变量执行自增操作;所以while(i++)的循环次数为5,即i=-5,-4,-3,-2,-1,但每次进入循环体之后i的值已经发生变化,即自增操作,和对应的switch表达式的值对比如下:while表达式值 进入循环i的值 循环体内switch表达式值 -5 -4 1 -4 -3 2 -3 -2 3 -2 -1 4 -1 0 5而switch(i+5)的case只有 1,2,3而题目问最后一行输出,所以我们只看最后一次循环,即case值为3此时对应的i的值为-2所以,最后一行输出由case 3: printf(%d\n,i);产生,输出为-2
全部回答
  • 1楼网友:北方的南先生
  • 2021-01-29 02:11
好好学习下
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯