首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

热呼呼的笔试题,大家看看有没有效率高点的方法,该如何处理

2012-02-15 
热呼呼的笔试题,大家看看有没有效率高点的方法给两个参数,分别为intnum,intn,只能用+,-,*,/返回第n位的二

热呼呼的笔试题,大家看看有没有效率高点的方法
给两个参数,分别为int   num,int   n,只能用+,-,*,/   返回第n位的二进制数。如:num=10,n=3,返回0.

[解决办法]
(m> > (n-1))&1
[解决办法]
辗转/2
[解决办法]
for (int i=1;i <n;i++)
{
num/=2;
}
return num-num/2*2;
[解决办法]
用num除n次2,然后将得到的数的最低位取出来。
至于怎么取最低位,可以再除一次2,然后乘一次2,得到一个值,再用原来的数去减这个值,就可以了。

热点排行