在牛客上刷到“int型正整数在内存中存储时1的个数”这道题,现在将通过的代码贴一下,供大家参考。
输入一个int型的正整数,计算出该int型数据在内存中存储时1的个数。
#include <stdlib.h> #include <stdio.h> int getcount(int num1) { int count = 0; int cal = num1; int i = 0; while(cal>0) { i = cal % 2; cal = cal / 2; if(i==1) count++; } return count; } int main() { int inputdata; scanf("%d",&inputdata); int g = getcount(inputdata); printf("%d",g); }