十进制转化为二进制的方法,在数学上是除二取余法,如下图(自己在画图上画的,有点子丑,,,):
我这是以36为例,用36不断的去除二取余,左边就是余数,最后从下至上把余数连起来,就是我们要得到的结果,就是100100.
(其实其他进制也差不多是这个样子,几进制就是除几)
在数学上学会方法就很简单,但是今天我在想着怎么用C++去实现,结果绞尽ru汁,费了大劲,于是想着做一个记录吧,代码如下:
#include<iostream.h>
void main(){
int de;
int bin;
int i=1,j=0;
cout<<"输入一个十进制数:"<<endl;
cin>>de;
while(de!=0){
bin = de%2;
de = de/2;
j = j+i*bin;
i=i*10;
}
cout<<"转化后的二进制数为:"<<j<<endl;
}
有什么不对的地方还望指正,新手一只。。。