解题思路:用一个while循环通过每次让n对2求余,结果保留的一个数组中,再把数组倒着输出,
注意事项:如果n小于零,需要提前输入一个负号,再加上n=-n;如果n为0是,直接输出0
参考代码:
#include<stdio.h>
int main()
{
int n;
int j=0;
int str[1000];
while(scanf("%d",&n)==1)
{
j=0;
printf("%d-->",n);
if(n<0)
{
printf("-");
n=-n;
}
if(n==0)
{
printf("0");
}
while(n)
{
str[j++]=n%2;
n=n/2;
}
while(j--)
{
printf("%d",str[j]);
}
printf("\n");
}
return 0;
}
0.0分
0 人评分