C语言 将十进制数转化为二进制数 程序代码

简单的最好,目前只学过数组和简单的语句,刚入门不久

#include <stdio.h>

void main()
{
int a;
scanf(\"%d\",&a);//输入一个10进制数。

int result=0;//存储a的二进制结果。
int p=1;//p=1表示个位数

do
{
int b=a%2;//b是余数,第一个余数是二进制的个位。
result=result+p*b;
p=p*10;//*10表示下个是10位数。
a=a/2;
}while(a);

printf(\"\\n%d\\n\",result);
}

程序在vc6.0下编译通过可以直接用,你自己看看吧,思路是a%2的结果是二进制的个位数,(a/2)%2的结果是二进制的十位数所以p扩大10倍,以后依次类推。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2006-11-22
main()
{
int i=0,m=-1,j,k,num;
int a[100];
printf("input a number:\n");
scanf("%d",&num);
while(num!=0)
{ j=num%2;k=num/2;
a[i]=j;num=k;
m++;i++;
}
for(;m>=0;m--)
printf("%d",a[m]);
}
初学,共同进步



相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网