怎么就不能好好地写个看的明白的题解呢??
查找输入整数二进制中1的个数
https://www.nowcoder.com/practice/1b46eb4cf3fa49b9965ac3c2c1caf5ad
#include <iostream> using namespace std; int main() { int n, res; // 定义我们输入的 n 和我们最后的二进制1的个数 while (cin >> n) { // 多组输入我们的 n res = 0; // 因为是多组输入,我们把我们每次的答案都先清空为 0 while (n) { // 如果 n 还有数字,不为0 if (n & 1) res++; // 如果当前 n 的最后一位二进制位是 1, 答案加1 n >>= 1; // n 向右移一次,将刚才计算过的二进制位剔除掉 } cout << res << "\n"; // 输出最后的一个答案 } return 0; }