【C语言】编写一个函数返回参数二进制中1的个数。
来源:互联网 发布:淘宝四钻店铺转让 编辑:程序博客网 时间:2024/04/30 10:47
编写一个函数返回参数二进制中1的个数。自己写了一下,觉得挺有意思,总结了3个方法 :
第一种方法:
#include<stdio.h>int main(){ int num = 10;//10的二进制位1010 int count = 0; while (num != 0) { num = num&(num - 1);//(1)1010&1001=1000;1000&0111=0000 count++;count } printf("1的个数:%d\n", count); system("pause"); return 0;}
总结:每一次按位与都将少一个二进制中的1
第二种方法:
#include<stdio.h> int main(){ int num =10; int count = 0; int i = 0; for (i = 0; i < 32; i++)//将该数右移32次,每一次与1按位与 { if ((num>>i)&1 == 1)//若该位为1,结果为1,count+1 count++; } printf("1的个数%d\n", count); system("pause"); return 0;}第三种方法:#include<stdio.h>int main(){ int num = 10; int count = 0; while (num) { if (num % 2 == 1)//模2求余法 count++; num = num / 2; } printf("1的个数=%d\n", count); system("pause"); return 0;}
1 0
- 【C语言】编写一个函数返回参数二进制中1的个数。
- C语言中写一个函数返回参数二进制中 1 的个数
- 【c语言】 写一个函数返回参数二进制中 1 的个数
- C语言实现谷歌面试题:写一个函数返回参数二进制中 1 的个数
- 用C语言编写一个函数返回参数二进制中 1 的个数(3种方法)(谷歌笔试题)
- 我用C语言 写一个函数返回参数二进制中 1 的个数的三种不同方法
- C语言 写一个函数返回参数值二进制为1的个数
- 写一个函数返回参数二进制中 1 的个数
- 写一个函数返回参数二进制中 1 的个数
- 一个函数返回参数二进制中 1 的个数
- 写一个函数返回参数二进制中 1 的个数
- 写一个函数返回参数二进制中1的个数
- 写一个函数返回参数二进制中1的个数
- 写一个函数返回参数二进制中 1 的个数
- 写一个函数返回参数二进制中1的个数
- 写一个函数返回参数二进制中 1 的个数
- 写一个函数返回参数二进制中1的个数
- 写一个函数返回参数二进制中1的个数
- RecyclerView学习demo
- 写在微信小程序上线之夜,我想对移动开发人员说别慌先玩玩AR压压惊!
- mybatis将所有的异常全部包成了运行时异常
- 开发者,别被小程序“坑”了
- Python itertools 模块
- 【C语言】编写一个函数返回参数二进制中1的个数。
- 前端AJax的实现
- 初识AutoCompleteTextView和MultiAutoCompleteTextView
- 装电脑小结
- 第一个爬虫脚本
- 1985: 即将到来的新生赛
- MYSQL之操作数据库表(二)
- Spring事务管理只对出现运行期异常进行回滚
- 接口测试的那些事(一)