您现在的位置:学赛首页 > 计算机等级考试 > 复习资料 > 正文
全国计算机等级考试二级C语言之位运算
http://www.educity.cn 作者:不详 来源:网络 2006年8月1日 发表评论 进入社区

全国计算机等级考试二级C历年试题合集含答案(CHM文件下载)>>

第十五部分:位运算


一、选择题:
(1)以下程序的功能是进行位运算
 main()
 { unsigned char  a, b;
   a=7^3;    b= ~4 & 3;  
printf("%d %d\n",a,b);
 }
程序运行后的输出结果是
 A)4  3   
 B)7  3   
 C)7  0   
 D)4  0

(2)有以下程序
main()
{
   int  c=35;  printf("%d\n",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\n”,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\n",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\n”,b,c);
}
程序运行后的输出结果是
 A) –11  12  
 B) –6 –13  
 C) 12   24  
 D) 11 22

(8) 以下程序的输出结果是
main()
{ char  x=040;
   printf("%0\n",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\n”, (x&1)&&(z<’z’)  );  }

(11) 设 int  b=2;表达式(b>>2)/(b>>1)的值是
 A) 0           
 B) 2             
 C) 4            
 D) 8

(12) 设有如下定义:int x=l,y=-1;,则语句:printf("%d\n",(x--&++y));的输出结果是
 A) 1     
 B) 0      
 C) -1      
 D) 2

(13) 语句:printf("%d \n",12 &012);的输出结果是
 A) 12   
 B) 8   
 C) 6  
 D) 012

(14) 下面程序的输出是
 A) 100           
 B) 160            
 C) 120            
 D) 64
main()
{ char x=040;
printf("%d\n",x=x<<1);}

(15) 执行下面的程序段
int x=35;
char z='A';
int b;
B=((x&15)&&(z<'a'));
后,B的值为
 A) 0             
 B) 1              
 C) 2              
 D) 3

(16) 设有以下语句:
char  a=3,b=6,c;
c=a^b<<2;
则c的二进制值是 【16】 。
 A) 00011011   
 B)00010100   
 C)00011100   
 D)00011000

二、填空题:

(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