【C语言】输入一个整数,输出该数二进制表示中1的个数(三种方法)
2016-05-30 17:19
681 查看
输入一个整数,输出该数二进制表示中1的个数。如输入32,输出1.
代码实现:
方法1:与运算
方法3:移位
#define _CRT_SECURE_NO_WARNINGS 1
#include<iostream>
using namespace std;
int FindOneNumber(unsigned int num)
{
int numberofOne = 0;
while (num)
{
if (num & 1)
numberofOne++;
num = num >> 1;
}
return numberofOne;
}
void Test()
{
int num = 32;
cout << FindOneNumber(num) << endl;
}
int main()
{
Test();
system("pause");
return 0;
}[/code]
本文出自 “Han Jing's Blog” 博客,请务必保留此出处http://10740184.blog.51cto.com/10730184/1771992
代码实现:
方法1:与运算
#define _CRT_SECURE_NO_WARNINGS 1 #include<iostream> using namespace std; int FindOneNumber(unsigned int num) { int numberofOne = 0; while (num) { if(num % 2 == 1) numberofOne++; num /= 2; } return numberofOne; } void Test() { int num = 32; cout << FindOneNumber(num) << endl; } int main() { Test(); system("pause"); return 0; }
方法3:移位
#define _CRT_SECURE_NO_WARNINGS 1
#include<iostream>
using namespace std;
int FindOneNumber(unsigned int num)
{
int numberofOne = 0;
while (num)
{
if (num & 1)
numberofOne++;
num = num >> 1;
}
return numberofOne;
}
void Test()
{
int num = 32;
cout << FindOneNumber(num) << endl;
}
int main()
{
Test();
system("pause");
return 0;
}[/code]
本文出自 “Han Jing's Blog” 博客,请务必保留此出处http://10740184.blog.51cto.com/10730184/1771992
相关文章推荐
- 【C语言】单链表的相关热点面试题(包括:从尾到头打印,逆置,冒泡,寻找中间节点,倒数k节点)
- 【C++】认识模版函数
- 【C++】模版实现双向链表的各种操作(如:逆置、去重Unique、分类(冒泡)、合并)
- 【C++】容器适配器实现栈Stack的各种功能(入栈、出栈、判空、大小、访问所有元素等)
- 【C++】容器适配器实现队列Queue的各种功能(入队、出队、判空、大小、访问所有元素等)
- 【C++】类型萃取技术实现静态顺序表
- 【C++】智能指针的作用,模拟实现auto_ptr,scoped_ptr,shared_ptr,scoped_array,shared_array
- 【C语言】求斐波那契(Fibonacci)数列通项(递归法、非递归法)
- 【C语言】str类与men库函数的实现(如:strcpy,strcmp,strstr,strcat,memmove,memcpy)
- 【C语言】break,continue的区别
- 【C语言】从标准输入读取字符,所有非字母字符完全按照输入形式输出,字母字符在输出前加密
- c语言:【顺序表】静态顺序表的初始化、打印、尾插、尾删
- c语言:【顺序表】静态顺序表的头插、头删
- c语言:【顺序表】静态顺序表的在指定位置插入元素,以及查找指定元素
- c语言:【顺序表】静态顺序表的删除指定位置元素Erase、删除指定元素Remove
- C语言:【动态顺序表】动态顺序表的初始化、打印、尾插PushBack、尾删PopBack
- C语言:【动态顺序表】动态顺序表的在指定位置插入元素Insert,以及指定元素Find
- 【C语言项目】注释转换
- 【String类浅拷贝的实现】C++:String类引用计数浅拷贝的两种实现
- 【String类】C++:String类的传统写法与现代写法