ps:这道题是题目坑爹了...题目说不考虑n=0的...但其实要考虑...醉了
中文意思:输入一个10进制的数,输出他的二进制数
代码:
#include "stdio.h"
int main(){
int n,i,a[1000],num;
while(~scanf("%d",&n)){
num=0;
if(n==0){
printf("0\n");continue;
}
if(n==1){
printf("1\n");continue;
}
if(n==2){
printf("10\n");continue;
}
while(n/2!=0){
a[num++]=n%2;
n=n/2;
}
if(n==2){
a[num++]=0;
a[num]=1;
}
else if(n==1){
a[num]=1;
}
for(i=num;i>=0;i--){
if(i==0) printf("%d\n",a[i]);
else printf("%d",a[i]);
}
}
return 0;
}
时间: 2024-11-23 19:49:31