70、下述程序段的输出结果是( )。 int a=3;b=4; int c=a^b>>3; printf(✀✀%d✀✀,c

2025-03-03 21:45:53
推荐回答(1个)
回答1:

最近在备考计算机二级,对这个有点了解,


根据运算符优先级,先计算右移运算符,右移相当于除法,移1位相当于除2

b>>3=4/8=0

再计算按位异或运算,要先转换为二进制数,相同为0,不同为1

a=3=0000 0011

0=0=0000 0000

a^0=0000 0011=3;

再进行赋值操作c=3;


上机程序验证:

#include
main()
{
    int a=3,b=4,c;
    c=a^b>>3;        
    printf("%d\n",c);
}


祝你学习愉快!谢谢!