有以下程序: #include main() {int c,d; C=(13>>1)|1; d=(13>1)‖1; printf("%d,%d\n",c,d); } 程序运行后的输出结果是(

admin2017-07-05  25

问题 有以下程序:
    #include
    main()
    {int c,d;
    C=(13>>1)|1;
    d=(13>1)‖1;
    printf("%d,%d\n",c,d);
    }
    程序运行后的输出结果是(    )。

选项 A、6,1
B、1,1
C、7,1
D、7,2

答案C

解析 表达式c=(13>>1)‖中,>>是右移符号,数字13换算成二进制后右移1位,再和1进行按位或运算,结果为7;表达式d=(13>1)‖1中,首先判断13是否大于1,此时条件成立返回1后,再和1进行或运算,结果为1,因此答案为C选项。
转载请注明原文地址:https://jikaoti.com/ti/Dsi0FFFM
0

最新回复(0)