HJ15. 求int型正整数在内存中存储时1的个数
描述
输入描述
输入一个整数(int类型)
输出描述
这个数转换成2进制后,输出1的个数
示例1
输入:
5
输出:
2
示例2
输入:
0
输出:
0
C 解法, 执行用时: 1ms, 内存消耗: 256KB, 提交时间: 2020-07-07
#include <stdio.h> int main() { int m; int cnt = 0; scanf("%d", &m); while(m) { cnt += m&1; m = m >> 1; } printf("%d", cnt); return 0; }
C 解法, 执行用时: 1ms, 内存消耗: 284KB, 提交时间: 2020-12-26
#include<stdio.h> int main() { int n,counter=0; scanf("%d",&n); while(n!=0) { if(n%2==1) counter++; n=n/2; } printf("%d",counter); return 0; }