题目网址:https://bzoj.org/p/Z1600
Description
输入一个不大于32767的正整数N,将它转换成一个二进制数
Input
输入只有一行,包括一个整数n(n<=32767)
Output
输出只有一行,包含一个二进制数,数字之间以空格分开
Samples
输入数据 1
100
输出数据 1
1 1 0 0 1 0 0
Sol:转化二进制法则:除以二取余,倒序输出
思路:
开一个数组a,又来存二进制的每一位
代码:
#include<bits/stdc++.h>
using namespace std;
int a[100010];
int main(){
int n,j=0;
cin>>n;
if(n==0){
cout<<n;
return 0;
}
while(n>0){
a[++j]=n%2;
n/=2;
}
for(int i=j;i>=1;i--)
cout<<a[i]<<" ";
return 0;
}
点个赞再走吧!