给你一个int型数,如 n, 判断它是不是2的多少次方,若是的,打印出来是多少次方?
2011-06-18 21:14
441 查看
给你一个int型数,如 n, 判断它是不是2的多少次方,若是的,打印出来是多少次方 比如 n=8 2的3次方=8 所以打印3 n=5 直接cout<<"no"就可以了 要求,不准用循环,不准用库函数 想不通,睡不着啊, 我只知道 n&(n-1)可以判断是不是满足条件,但是要确定是多少次方,而且不能用循环。 #include <cstdlib> #include <iostream> using namespace std; int log2(int n) { if(1 == n) return 0; else return 1 + log2(n>>1); } int main(int argc, char *argv[]) { int n; printf("please input an interger: "); cin>>n; if(n & (n-1)) printf("n is not 2 的N次方./n"); else printf("n is 2 的%d次方./n", log2(n)); system("PAUSE"); return EXIT_SUCCESS; } http://topic.csdn.net/u/20110614/01/16affc97-0f0c-43e7-b874-28b019a0d759.html?seed=546114972&r=73921429#r_73921429 http://topic.csdn.net/u/20110618/14/d779583c-96a8-452d-a384-b73cac1c9bc8.html?42937 |
相关文章推荐
- 快速判断一个数是否是2的幂次方,若是,并判断出来是多少次方!
- 快速判断一个数是否是2的幂次方,若是,并判断出来是多少次方!
- 快速判断一个数是否是2的幂次方,若是,并判断出来是多少次方!
- 快速判断一个数是否是2的幂次方,若是,并判断出来是多少次方!
- 快速判断一个数是否是2的幂次方,若是,并判断出来是多少次方!
- 快速判断一个数是否是2的幂次方,若是,并判断出来是多少次方!
- 如何判断一个数是否为4的幂次方?若是,并判断出来是多少次方?
- 如何判断一个数是否为4的幂次方?若是,并判断出来是多少次方?
- 面试:快速判断一个数是否是2的幂次方,若是,并判断出来是多少次方!
- 快速判断一个数是否是4的幂次方,若是,并判断出来是多少次方! .
- 快速判断一个数是否是2的幂次方,若是,并判断出来是多少次方!
- 快速判断一个数是否是2的幂次方,并判断出来是多少次方
- 快速判断一个数是否是2的幂次方,若是,并判断出来是多少次方!
- 快速判断一个数是否是2的幂次方,若是,并判断出来是多少次方!
- 判断一个整数是不是2的阶次方数
- 判断一个数是不是2的n次方
- 判断一个整数是不是2的阶次方数
- java中如何知道一个字符串中有多少个字,把每个字打印出来,举例