用C# 写出代码判断一个整数是不是2的N次方。
时间: 2024-02-05 17:10:55 浏览: 119
判断是否为2的N次方
5星 · 资源好评率100%
可以使用位运算来判断一个整数是否是2的N次方。如果一个数是2的N次方,那么它的二进制表示中只有一位是1,其余位都是0。因此,我们可以用以下代码来实现:
```csharp
public static bool IsPowerOfTwo(int n)
{
return (n > 0) && ((n & (n - 1)) == 0);
}
```
这个函数首先判断n是否大于0,因为负数和0都不是2的N次方。然后,它使用位运算n & (n - 1)来判断n是否只有一位是1。如果结果是0,则说明n是2的N次方,返回true;否则返回false。
阅读全文