Ricar0902 2022-10-12 09:55 采纳率: 100%
浏览 28
已结题

“或”的逻辑运算相关问题

在课本上做练习题时遇到的问题

#include<stdio.h>
int main()
{
int a,b,c;
a=b=c=1;
--a||b++&&c++;
printf("%d,%d,%d\n",a,b,c);
++a&&--c||++b;
printf("%d,%d,%d\n",a,b,c);
++a||--b||--c;
printf("%d,%d,%d\n",a,b,c);
a--&&--b||++c;
printf("%d,%d,%d\n",a,b,c);
}
结果如下
0,2,2
1,2,1
2,2,1
1,1,1

为什么在第一行执行后输出结果显示 “||”也就是“或”逻辑运算符 两边同时执行后的结果
而后面几行只运算了 “或” 前面的代码

  • 写回答

3条回答 默认 最新

  • lzl2040 人工智能领域新星创作者 2022-10-12 10:02
    关注

    这个是因为--a||b++&&c++这个式子先运行了--a,a变成0了,那么||左边就是False,那么它就还要看右边部分的情况,而后面的,比如:
    ++a&&--c||++b,这里++a后变成1了,那么||左边就是True了,||右边就没有 必要看了

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 10月20日
  • 已采纳回答 10月12日
  • 创建了问题 10月12日

悬赏问题

  • ¥66 比特币地址如何生成taproot地址
  • ¥20 数学建模数学建模需要
  • ¥15 关于#lua#的问题,请各位专家解答!
  • ¥15 什么设备可以研究OFDM的60GHz毫米波信道模型
  • ¥15 不知道是该怎么引用多个函数片段
  • ¥30 关于用python写支付宝扫码付异步通知收不到的问题
  • ¥50 vue组件中无法正确接收并处理axios请求
  • ¥15 隐藏系统界面pdf的打印、下载按钮
  • ¥15 基于pso参数优化的LightGBM分类模型
  • ¥15 安装Paddleocr时报错无法解决