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

admin2017-07-05  30

问题 有以下程序
#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)|1中,>>是右移符号,数字13换算成二进制后右移1位,再和1进行按位或运算,结果为7;表达式d=(13>1)‖中,首先判断13是否大于1,此时条件成立返回1后,再和1进行或运算,结果为1,因此答案为C选项。
转载请注明原文地址:https://kaotiyun.com/show/4dDp777K
0

最新回复(0)