c语言:为什么选c

{inta=-2,b=2;for(;++a&&--b;);printf("%d,%d\n",a,b);}程序运行后的输出结果是A)1,-1B)0,0C)0,1D)0,2... { int a=-2, b=2;
for(; ++a && --b;)
;
printf("%d,%d\n", a,b);
}
程序运行后的输出结果是
A) 1,-1
B)0,0
C) 0,1
D)0,2
展开
 我来答
拥抱Linux
2019-03-21 · 知道合伙人教育行家
拥抱Linux
知道合伙人教育行家
采纳数:418 获赞数:2160
大学的校级奖学金,机械行业十年工作经验

向TA提问 私信TA
展开全部

逻辑与运算符 && 的特点是,必须要 左右两边的 操作数 都为 真,结果才为真, 而 一旦 左边的操作数 为假的话, 那么 右边的操作数就不再 去检查(执行)了。

所以,上面的代码运行的时候, 当遇到 ++a 的返回值为 非真( 具体是 0)的时候, 右边的 --b 就不检查了, 也就是 --b 就没有执行。

所以,最终的 a 、 b 的值分别是  0  和  1 。

如有帮助,烦请点采纳,谢谢!

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式