用一条语句判断一个整数是不是2的整数次方

按位与:a&b是把a和b都转换成二进制数然后再进行与的运算;

#include <iostream>
#include <string>
using namespace std;
int main()
{
	int n;
	scanf("%d", &n);
	if ((n & (n - 1)) == 0)
	{
		cout << "Yes" << endl;
	}cout << "No" << endl;
	system("pause");
	return 0;
}