题解
2025-06-01 17:52:18
发布于:北京
2阅读
0回复
0点赞
不需要用数组,用字符串模拟一下即可
代码如下
#include<bits/stdc++.h>
using namespace std;
int n;
string s="";
int main(){
cin>>n;
while(n){
if(n%2==1) s+='1';
else s+='0';
n/=2;
}
for(int i=s.size()-1;i>=0;i--){
cout<<s[i];
}
return 0;
}
模拟了十进制转二进制使用的短除法。循环直到n为0,每次对n取余,如果是1,s末尾加1,否则加0。相应的n要除以2,最后倒序输出。不懂的去搜一下十进制转二进制的手算过程
这里空空如也
有帮助,赞一个