刚接触C++,在此就写一个转化为二进制的小程序
2015-08-05 15:44
525 查看
在c++标准库里面有一个bitset这个头文件可以实现也是最简单的方法,首先我先实现最简单的方法:
#include"stdafx.h"
#include<iostream>
#include<bitset>//转成二进制的头文件
using namespace std;
int main()
{
int n;
bitset<4>nb;//biset<几位二进制数>变量名
cout<<"请输入要转化为二进制的数:";
cin>>n;//输入要转换的数
nb=n;//把要转化的数赋值给前面的定义的变量名,系统会自动转换成二进制
cout<<nb<<endl;
system("pause");
return 0;
}
这里是要包含头文件#include<bitset>即可
下面我又编一个另外一个方法:
这是把输入的数从32位开始逐位与1做与运算:
#include"stdafx.h"
#include<iostream>
using namespace std;
void change(int);
void change(int n)
{
for(int i=31;i>=0;i--)
{
cout<<((n>>i)&1);//这里就是把需要转换的数先移位i位,即先除以i,然后再与1异或运算即可将该位转化为2进制数
}
cout<<endl;
}
int main()
{
int a;
cout<<"请输入需要转化为二进制的数";
cin>>a;
change(a);
system("pause");
return 0;
}
相关文章推荐
- 用VS2008编译(zlib)C语言代码的方法
- C++中的四种转型操作符
- 黑马程序员---C语言基础---概述、运算符
- C++易混淆概念
- 【C++】拷贝构造函数和赋值函数
- map
- VC++绘图时,利用双缓冲解决屏幕闪烁 转载
- c++ 时间处理
- C语言之static作用
- c++技术系统学习资料
- 图的拓扑排序的非递归和递归的c++实现
- VC++双缓冲保持背景不擦除之实现
- C语言-结构体内存对齐
- c++中的explicit关键字
- 用VS2008的nmake编译(libevent)C语言代码的方法
- C++中随机函数rand()和srand()的用法
- C语言-不同类型数据间的混合运算
- 统计输入字符各个字母出现频率的解题思路
- 七牛(qiniu)C/C++ SDK 实现上传
- (C/C++学习笔记)临时对象深入理解