循环:
#include<iostream>
#include<cmath>
using namespace std;
int tobinary(int d){
int b=0,k=0;
do{
b=(d%2)*pow(10,k++)+b;
}while(d=d/2);
return b;
}
int main(){
int a;
cin>>a;
cout<<tobinary(a)<<"\n";
return 0;
}递归:
#include<iostream>
#include<cmath>
using namespace std;
//d是十进制数 b是转换的二进制数 k是二进制的位数
int tobinary(int d,int b,int k){return d/2?tobinary(d/2,(d%2)*pow(10,k)+b,k+1):(d%2)*pow(10,k)+b;}
int main(){
int a;
cin>>a;
cout<<tobinary(a,0,0)<<"\n";
return 0;
}
本文提供了两种将十进制数转换为二进制数的方法:一种是使用循环,另一种是采用递归方式。通过这两个示例可以了解基本的转换逻辑及C++语言的应用。
1561

被折叠的 条评论
为什么被折叠?



