国际空间研究组织 | ISRO CS 2014 |问题 32
编写以下 C 程序的输出
#include
int main (void)
{
int shifty;
shifty = 0570;
shifty = shifty >>4;
shifty = shifty <<6;
printf("the value of shifty is %o",shifty);
}
(A) shifty的值为15c0
(B) shifty的值为4300
(C) shifty的值为5700
(D) shifty的值为2700答案: (D)
解释:给定,shifty = 0570;这里 shifty 是一个八进制数,因为它以 0 开头。
(0570)8 = (000 101 111 000)2
右移 4 位:
shifty = shifty >>4;
shifty = (000 000 010 111)2
左移 6 位:
shifty = shifty <<6
shifty = (010 111 000 000)2
= (2700)8
所以,选项(D)是正确的。
这个问题的测验