求int型数据在内存中存储时1的个数

Posted 新生代黑马

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了求int型数据在内存中存储时1的个数相关的知识,希望对你有一定的参考价值。

题目描述

  输入一个int型数据,计算出该int型数据在内存中存储时1的个数。

输入描述

  输入一个整数(int类型)

输出描述

  这个数转换成2进制后,输出1的个数

输入样例

5   

输出样例

2 

测试代码1

 1 #include <stdio.h>
 2 
 3 int main()
 4 {
 5     int n, count;
 6     while (scanf("%d", &n) != EOF)
 7     {
 8         count = 0;
 9         while (n)
10         {
11             if (n & 1)
12             {
13                 count++;
14             }
15             n = n >> 1;
16         }
17         printf("%d\n", count);
18     }
19     return 0;
20 }

测试代码2

 1 #include <stdio.h>
 2 
 3 int main()
 4 {
 5     int n, count;
 6     while (scanf("%d", &n) != EOF)
 7     {
 8         count = 0;
 9         while (n)
10         {
11             count++;
12             n = n & (n - 1);
13         }
14         printf("%d\n", count);
15     }
16     return 0;
17 }

 

以上是关于求int型数据在内存中存储时1的个数的主要内容,如果未能解决你的问题,请参考以下文章

求int型数据在内存中存储时1的个数

华为OJ-求int型数据在内存中存储时1的个数

华为机试HJ15:求int型正整数在内存中存储时1的个数

[NewCoder]求int型正整数在内存中存储时1的个数

HJ15 求int型正整数在内存中存储时1的个数_Scala

HJ15 求int型正整数在内存中存储时1的个数_Scala