【C language】判断一个正整数是否是2^n

简介: 【C language】判断一个正整数是否是2^n

题解:判断一个正整数是否是2^n(位运算方法)

1.题目

判断一个正整数是否是2^n

2.位运算法

思路:干掉二进制最右边的1,看是否是0

int main()
{
  int num = 16;
  if ((num & (num - 1)) == 0) printf("the num is a 2^n");
  else printf("the num is not a 2^n");
  return 0;
}


EOF

相关文章
|
8月前
leetcode-434:字符串中的单词数
leetcode-434:字符串中的单词数
49 1
|
8月前
整数的阶乘(英语:factorial)是所有小于及等于
整数的阶乘(英语:factorial)是所有小于及等于
【Leetcode -415.字符串相加 - 434.字符串中的单词数】
【Leetcode -415.字符串相加 - 434.字符串中的单词数】
48 0
|
8月前
|
C++ 索引
c++:string相关的oj题(415. 字符串相加、125. 验证回文串、541. 反转字符串 II、557. 反转字符串中的单词 III)
c++:string相关的oj题(415. 字符串相加、125. 验证回文串、541. 反转字符串 II、557. 反转字符串中的单词 III)
72 0
|
8月前
|
C语言
每天一道C语言编程(2^k进制数)
每天一道C语言编程(2^k进制数)
36 0
|
8月前
【每日一题Day237】LC1375二进制字符串前缀一致的次数 | 技巧题
【每日一题Day237】LC1375二进制字符串前缀一致的次数 | 技巧题
56 1
abc序列数
abc序列数
62 0
|
Java
【LC简单】434. 字符串中的单词数
【LC简单】434. 字符串中的单词数
74 0
【LC简单】434. 字符串中的单词数
|
人工智能 测试技术
PAT (Basic Level) Practice (中文) B1008 数组元素循环右移问题 (20 分)
PAT (Basic Level) Practice (中文) B1008 数组元素循环右移问题 (20 分)
107 0
PAT (Basic Level) Practice (中文) B1008 数组元素循环右移问题 (20 分)
|
Python
ZZULIOJ-1017,判断正整数位数(Python)
ZZULIOJ-1017,判断正整数位数(Python)