69,371
社区成员
发帖
与我相关
我的任务
分享
#include "stdio.h"
void main( void )
{
unsigned n=0; //利用unsigned,0xffffffff是可以正常计算的正数
int m=0;
char result[32]={0}; //保存二进制结果,视你要多少位而定
printf("十进制:");
scanf("%d",&n);
printf("二进制:");
for( ; n>0 ; n/=2 , m++)
result[m]=n%2;
for(m-- ; m>=0 ; m-- ) //倒序输出
printf("%d", result[m]);
}
#include<stdio.h>
int main(){
int n,result=0;
int key = 0, count = 1;
scanf("%d", &n);
if (n < 0) {
key = 1;
n = -n;
}
while (n) {
result += n % 2 * count;
n /= 2;
count *= 10;
}
if (key)
result += count;
printf("%d", result);
return 0;
}