You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

求下述C语言代码的运行输出并解释结果成因

运行输出
b = 4	 c = 1
结果成因解释
  • 初始变量赋值:a=10、b=4、c=2,在C语言里,非0值代表逻辑真,0代表逻辑假。
  • 关于b != !a;这条语句:
    • !a是逻辑非操作,a是10(非0),所以!a的结果是0。
    • 接着计算b != 0,结果是1,但这个计算结果没有被赋值给任何变量,b的初始值完全没被改动,所以b还是4。
  • 关于c =! !a;这条语句:
    • 先执行!a得到0,再对0执行逻辑非!0,结果是1。
    • 把这个1赋值给c,所以c的值从原来的2变成了1。
  • 最后printf输出当前b和c的值,就是4和1。

内容的提问来源于stack exchange,提问作者Vivek

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.12 13:35:13