解题思路:
十进制数循环对2求余求商,直到商数为0停止,然后倒序输出求得的余数即可。简单粗暴。
注意事项:
对输入的数记得先取绝对值。
参考代码:
#include <stdio.h>
#include <math.h>
int main()
{
int N,i,r;
int a[20];
while(~scanf("%d",&N))
{
printf("%d-->",N);
if(N<0) printf("-");
N=abs(N);
r=1;
for(i=0;r!=0;i++)
{
a[i]=N%2;
N=N/2;
r=N;
}
for(i--;i>=0;i--)
{
printf("%d",a[i]);
}
printf("\n");
}
return 0;
}
0.0分
6 人评分