试题与答案

设有以下语句: int a=1, b=2, c; c=a^(b<<2);

题型:单项选择题

题目:

设有以下语句:
int a=1, b=2, c;
c=a^(b<<2);
执行后,c的值为( )。

A) 6
B) 7
C) 8
D) 9

答案:

参考答案:D

解析: 本题考查的是位运算。因为任何数在计算机中都是以二进制的形式存在的,而位运算就是直接针对一个数的二进制位来进行的一些操作。题中的表达式b<<2意思是将b的二进制位往左移动2位,b的原值为2,即二进制的00000000 00000010。往左移动2位后应该变为00000000 00001000,即十进制8。不难看出每往左移动1位,就相当于在原值的基础上乘以1个2,但这也不一定准确,因为还要考虑往左移出去的那些位。接下来是a^8,^是按位异或运算符,简单来说就是比较参与运算的两个数相应的二进制位,若两个位相同则结果为0,否则为结果为1。

试题推荐
题型:选择题

下列各句中,标点符号使用正确的一句是[ ]

A.既然是汉语,就与汉民族、汉文化紧密相连。中学语文要不要突出民族传统,我认为是无须设问的。 B.“现代人里的顶尖运动员即便接受了大量训练,但是和远古人类所做的体力劳动相比,也差得非常远,”这位人类学家认为现代人的体质远逊于我们的祖先。

C.颁奖晚会渐进高潮,在观众热烈的掌声中,主持人高声宣布:“刚才颁发的是二三等奖,下面即将颁发的是一等奖。”

D.来自祖国大陆、香港、台湾和澳门等两岸四地的歌手联袂唱响了十一运主题歌“相亲相爱”,主题歌旋律富于动感,有时代特色,又渗透了山东民歌的元素。

查看答案
微信公众账号搜索答案