C++中进制转变
来源:互联网 发布:激战2诺恩捏脸数据 编辑:程序博客网 时间:2024/06/06 17:25
十进制转二进制:
//十进制转二进制#include<iostream>using namespace std;void printbinary(const unsigned int val){for(int i = 16; i >= 0; i--){if(val & (1 << i))cout << "1";elsecout << "0";}}int main(){printbinary(1024);return 0;}
十进制转八进制
//十进制转八进制#include <iostream>#include <vector>using namespace std;int main(){cout<<"input a number:"<<endl;int d;vector<int> vec;cin>>d;while (d){vec.push_back(d%8);d=d/8;}cout<<"the result is:"<<endl;for(vector<int>::iterator ip=vec.end()-1;ip>=vec.begin();){cout<<*ip--;}cout<<endl;return 0;}
十进制转随意进制:
//十进制转换为随意进制的源代码#include <iostream>using namespace std;int main(){long n;int p,c,m=0,s[100];cout<<"输入要转换的数字:"<<endl;cin>>n;cout<<"输入要转换的进制:"<<endl;cin>>p;cout<<"("<<n<<")10="<<"(";while (n!=0)//数制转换,结果存入数组s[m]{c=n%p;n=n/p;m++;s[m]=c; //将余数按顺序存入数组s[m]中}for(int k=m;k>=1;k--)//输出转换后的序列{if(s[k]>=10) //若为十六进制等则输出相相应的字母cout<<(char)(s[k]+55);else //否则直接输出数字cout<<s[k];}cout<<")"<<p<<endl;return 0;}
通过库函数实现八进制、十六进制输出:
#include <iostream>using namespace std;int main(){int test=64;cout<<"DEC:"<<test<<endl;cout<<"OCT:"<<oct<<test<<endl;//八进制cout<<"HEX:"<<hex<<test<<endl;//十六进制return 0;}
0 0
- C++中进制转变
- 转变
- 转变
- 转变?
- 转变
- 转变
- 转变
- 转变
- 转变
- 如何看待c语言编码的转变
- 从C到OC的转变
- 如何学好C、C++------思维方式的转变
- C语言学习:如何由dos向windows转变
- 【总结】从C/S到B/S的转变
- Objective-C开发——从java转向Objective-C思想转变总结
- <转>Objective-C开发 从java转向Objective-C思想转变总结
- 职责转变
- 开始转变
- Java_多态和内部类
- jQuery源码初探(2)
- 宏和函数
- 笔试面试算法经典--动态规划-最大子矩阵和(Java)
- c++调用dll动态链接库历程
- C++中进制转变
- ubuntu 16.04上radvd起不来
- viewpager的fragment中使用context报错的解决办法
- 求第一个只出现一次的字符
- MyBatis--动态SQL---foreach标签--数组
- 牛顿法
- JAVA规则引擎 -- Drools
- 小虎对《人民的名义》小说人物人名研究V0.1
- js单线程与java多线程、同步与异步