【C语言】统计一个数二进制中1的个数
2015-07-01 09:45
375 查看
//统计一个数二进制中1的个数 #include <stdio.h> int count_one(int num) { int count = 0; while (num) { count++; num = num&(num - 1); //每次消去最后面的一个1,直至没有 } return count; } int main() { printf("%d\n", count_one(12)); printf("%d\n", count_one(0)); printf("%d\n", count_one(-1)); return 0; }
相关文章推荐
- 【C语言】用宏实现一个整形奇偶位交换
- 【C语言】求一个数的绝对值
- 【C语言】不使用大小于号,求出两数最大值
- c++ 文件输入输出
- c++ 异常 错误
- C++的异常处理
- C++常用库函数
- C++ 覆盖 重载 隐藏 浅析
- C/C++数据对齐汇总
- OJ第三批——Problem L: C++继承(改错题)
- 浅谈VC++中的内联
- OJ第三批——Problem K:C++ 长方体继承自矩形
- 一个小巧的C++Log输出到文件类 (转)
- 第十七周oj刷题——Problem A: 实现复数类中的加运算符重载【C++运算符重载】
- OJ第三批——Problem J:C++复数运算符重载(+与<<)
- c语言 图像显示jpeg
- [C++ primer]第六章笔记-函数
- C++ 大规模程序设计 之 组件
- C语言字符串替换函数(strrpl)
- C语言编程