一、选择题:
(1)以下程序的功能是进行位运算
main()
{ unsigned char a, b;
a=7^3; b= ~4 & 3;
printf("%d %d
",a,b);
}
程序运行后的输出结果是
A)4 3
B)7 3
C)7 0
D)4 0
(2)有以下程序
main()
{
int c=35; printf("%d
",c&c);
}
程序运行后的输出结果是
A) 0
B) 70
C) 35
D) 1
(3) 设有定义语句:char c1=92,c2=92;,则以下表达式中值为零的是
A) c1^c2
B) c1&c2
C) ~c2
D) c1|c2
(4) 有以下程序
main( )
{ unsigned char a,b;
a=4|3;
b=4&3;
printf(“%d %d
”,a,b(;
}
执行后输出结果是
A) 7 0
B) 0 7
C) 1 1
D) 43 0
(5) 有以下程序
main()
{ int x=3, y=2,z=1;
printf("%d
",x/y&~z);
}
程序运行后的输出结果是
A) 3
B) 2
C) 1
D) 0
(6) 设char型变量x中的值为10100111,则表达式(2+x)^(~3)的值是
A) 10101001
B) 10101000
C) 11111101
D) 01010101
(7) 有以下程序
main()
{ unsigned char a,b,c;
a=0x3; b=a|0x8; c=b<<1;
printf(“%d%d
”,b,c);
}
程序运行后的输出结果是
A) –11 12
B) –6 –13
C) 12 24
D) 11 22
(8) 以下程序的输出结果是
main()
{ char x=040;
printf("%0
",x<<1);
}
A) 100
B) 80
C) 64
D) 32
(9) 整型变量x和y的值相等、且为非0值,则以下选项中,结果为零的表达式是
A) x || y
B) x | y
C) x & y
D) x ^ y
(10) 以下程序的输出结果是
A) 0
B) 1
C) 2
D) 3
main()
{ int x=0.5; char z=’a’;
printf(“%d
”, (x&1)&&(z<’z’) ); }
[1] [2] 下一页
(11) 设 int b=2;表达式(b>>2)/(b>>1)的值是
二、填空题:
(1) 设二进制数a是00101101,若想通过异或运算a^b使a的高4位取反,低4位不变,则二进制数b应是 【1】 。
答案:
一、选择题:
01) A 02) C 03) A 04) A 05) D
06) B 07) D 08) A 09) D 10) B
11) D 12) B 13) B 14) D 15) B
16) A
二、填空题:
(1) 11110000
上一页 [1] [2]