D选项的答案

来源:3-8 练习题

weixin_幕布斯8115894

2022-02-23 11:54

#include<stdio.h>

int main()

{

int a=5;

int b=9;

printf("%d\n",b++>=a*2&&b-a<=a);

printf("%d\n",b++>=a*2||b-a<=a);

printf("%d\n",!(a*2-b));

printf("%d\n",++b-a*2);

return 0;

 } 


结果是0,1,0,2

能解释下为什么d选项为什么是2吗

写回答 关注

5回答

  • 慕村4154991
    2022-10-12 17:17:24

     因为你在这里,上面b值已经赋值两次了,到运算结果时也就是11+1-10=2了,人家问题是独立问答,不承接。

  • weixin_慕容3009219
    2022-10-10 19:59:33

    输出是0吧

  • JYYANG
    2022-08-10 17:22:36

    printf("%d\n",b++>=a*2&&b-a<=a);这一句结束,b=10

    printf("%d\n",b++>=a*2||b-a<=a);这一句结束,b=11

    printf("%d\n",++b-a*2);这一句开始b已经是11了,然后先自加,b=12,12-5*2=2

    对于b运算的每一次自加都是会改变b的真实值,每一个代码单独运行一次更好,不容易出错。

  • qq_慕无忌3181556
    2022-05-06 16:46:17

    0.1.0.2

  • qq_慕桂英2413881
    2022-02-23 18:59:25

    是不是0

C语言入门

C语言入门视频教程,带你进入编程世界的必修课-C语言

926866 学习 · 21014 问题

查看课程

相似问题