阿里2014软件研发部笔试题_14
2013-11-13 19:01
239 查看
题目如下:
14、如下函数,在32bit 系统foo(2^31-3)的值是:
int foo(int x)
{
return x&-x;
}
A.0 B.1 C.2 D.4
题目解析:在C++中,没有幂指数的运算符,求一个数的幂使用pow(x,y)来实现的,所以此处的x^y指的是x与y的异或运算。
题中将2^31-3整体带入函数内,可得到
return 2^31-3&-2^31-3;
按照运算符优先级顺序,1)- 负号; 2) - 减号; 3)&; 4) ^ 异或
执行顺序如下,
<1> 31 - 3 = 28 return 2^28&-2^28;
<2> 28 & (-2) = 28 return 2^28^28;
<3> 28 ^ 28 = 0 return 2^0;
<4> return 2;
因此,答案选 C
14、如下函数,在32bit 系统foo(2^31-3)的值是:
int foo(int x)
{
return x&-x;
}
A.0 B.1 C.2 D.4
题目解析:在C++中,没有幂指数的运算符,求一个数的幂使用pow(x,y)来实现的,所以此处的x^y指的是x与y的异或运算。
题中将2^31-3整体带入函数内,可得到
return 2^31-3&-2^31-3;
按照运算符优先级顺序,1)- 负号; 2) - 减号; 3)&; 4) ^ 异或
执行顺序如下,
<1> 31 - 3 = 28 return 2^28&-2^28;
<2> 28 & (-2) = 28 return 2^28^28;
<3> 28 ^ 28 = 0 return 2^0;
<4> return 2;
因此,答案选 C
相关文章推荐
- 笔试面试(2)阿里巴巴2014秋季校园招聘-软件研发工程师笔试题详解
- 百度2014校园招聘笔试题(深圳-软件研发岗)
- 百度2014校园招聘笔试题(成都站,软件研发岗)——2014.09.21
- 百度2014校园招聘 软件研发工程师 笔试题
- 百度2014校园招聘笔试题(成都站,软件研发岗)――2014.09.21
- 阿里巴巴2014秋季校园招聘-软件研发工程师笔试题详解
- 百度2014校园招聘笔试题(深圳-软件研发岗)
- 阿里巴巴2014秋季校园招聘-软件研发工程师笔试题详解
- 最新2014欢聚时代(YY)软件研发笔试题
- [百度笔试] 2014百度校园招聘软件研发题--武汉
- 阿里巴巴2014秋季校园招聘-软件研发工程师笔试题
- 百度 2014 校园招聘 软件研发工程师 笔试题(天津站)
- 百度校园2014招聘软件研发类笔试题(深圳站)
- 2014百度校园招聘笔试题(上海软件研发工程师)
- 百度2014秋季校园招聘-软件研发工程师笔试题(2013年10月13日北京清华站)
- 2014百度软件研发工程师笔试题
- 笔试面试(2)阿里巴巴2014秋季校园招聘-软件研发工程师笔试题详解
- 阿里巴巴2014秋季校园招聘-软件研发工程师笔试题 续
- 百度2014秋季校园招聘-软件研发工程师笔试题(2013年9月20日山东济南站)
- 2014欢聚时代(YY)软件研发笔试题