数值转换:十进制正整数转二进制
2009-11-02 13:08
330 查看
今天朋友去面试,问到一基础题,实现正整数到二进制的转换。因为对基础掌握的不牢,此题并未能做出正确解答。我在给他讲解一番后,他恍然大悟。
对于十进制正整数到二进制的转换其实很简单,用2辗转相除至结果为1,将余数和最后的1从下向上倒序写,就是整数所对应的二进制值。例如5的二进制就是101(如图):
通过观察,便能得出一递归过程:
ASCII_0是0的ASCII码值,定义如下:
同是需要引用的头文件:
以上的代码,便能实现正整数到二进制的转换。如果求职者因为这些简单的题目,而失去了工作的机会,那真的很可惜。平时应注意基础知识的掌握。对于基础掌握不牢,就算写了很多代码,那又怎样……
对于十进制正整数到二进制的转换其实很简单,用2辗转相除至结果为1,将余数和最后的1从下向上倒序写,就是整数所对应的二进制值。例如5的二进制就是101(如图):
通过观察,便能得出一递归过程:
]string Int2Bin(const int __int) { string __bin = ""; if (__int/2 != 0) __bin = Int2Bin(__int/2); return __bin + char(ASCII_0 + __int%2); }
ASCII_0是0的ASCII码值,定义如下:
]const int ASCII_0 = 48;
同是需要引用的头文件:
]#include <string> using namespace std;
以上的代码,便能实现正整数到二进制的转换。如果求职者因为这些简单的题目,而失去了工作的机会,那真的很可惜。平时应注意基础知识的掌握。对于基础掌握不牢,就算写了很多代码,那又怎样……
相关文章推荐
- 字符串处理函数:识别一字符串所属的数值常量类型(十六进制、二进制、十进制整数,浮点数)
- 一个十进制整数转换成二进制含多少个1
- 十进制任意整数类型向常见数值类型进制转换的通用办法
- byte、二进制、十进制数值之间的转换
- 数值转换(十进制转换为二进制)
- 8、编写一个程序,它先将键盘上输入的一个字符串转换成十进制整数, 然后打印出这个十进制整数对应的二进制形式。
- byte、二进制、十进制数值之间的转换
- 整数十进制转换成二进制
- 计算将一个十进制整数转换成二进制含多少个1
- Java中二进制和十进制整数之间相互转换的思考
- 十进制整数转换二进制
- 从键盘输入某个十进制整数数,转换成对应的二进制整数并输出。
- java 十进制整数转换为二进制!
- java实现十进制整数或小数转换成二进制
- 计算将一个十进制整数转换成二进制含多少个1
- 整数十进制转换为二进制和十六进制
- ip(点分十进制 <==> 二进制整数)之间的转换
- 二进制与十进制整数,浮点数相互转换
- 编程十进制整数转换为二进制
- T-SQL编写程序,将十进制数值转换为二进制字符串后输出