勤学秀才
有以下程序 main() {int i=1,j=1,k=2; if((j++||k++)&&i++)printf("%d,%d,%d ",i,j,k); } 执行后输出结果是 A)1,1,2B)2,2,1C)2,2,2D)2,2,3 希望回答者能解释清楚。
我觉得应该选C的,但答案给出的选项居然是D
反了,我觉得应该是D,但是编译后是C
问题地区标注:山东省->青岛市
还可输入300个字
请输入上图中的验证码,字母不区分大小写。
点击查看更多 请教 问题 一个 相关信息
侍郎
应该就是c, 因为或“||”条件,是这样编译的,比如if(a||b) 如果a条件为TRUE了,就不会往下走判断b条件了,而是直接认为if条件就是TUUE, 就像你这个例子一样,因为j++ 就已经是2了,if条件已经为“真”,所以不会在走K++,而&& 运算符,是两边的条件都要判断的。所以就应该选择c
多谢指教!
返回知识堂首页>>
如果您没能找到需要的内容,请提出您的问题>>
减肥,美容,健康,情感
成员:23主题:29
揭秘蔡康永“断背”情
细数一脱走红网络美女
上海十万白领宽衣解带
牛人曝老婆出轨全过程
3头鲸鱼刚刚围着雪龙号游了一圈…更多
冬季预防感冒食疗良方
阳光的手擅长分类:计算机网络
woshiliuhong擅长分类:娱乐休闲
qdrdsjj6717擅长分类:社会人文
水灵灵擅长分类:家庭生活