用C编程,输入一个十进制的数转化为二进制的数输出

仅用输入输出,循环(for或while语句),if 条件等语句能不能编出,求大神,VC 6.0环境下

你好!

完整的代码:

#include<stdio.h> 
int main() 
{
int num;     
int n,z[30];
scanf("%d",&num);     
for(n=0;n>=0;n++)   
{
z[n]=num%2;
if(num/2==0) break;       
num=num/2;
}
for(;n>=0;n--)   
{
printf("%d",z[n]);   
}
}

温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-11-10
#include<stdio.h>
int main()
{
int n,i;
printf("请输入一个十进制数:");
scanf("%d",&n);
int m[100];
for(i=0;n!=0;i++) //辗转相除,2进制数存入数组m[100]
{
m[i]=n%2;
n=(int)(n/2);
}
while(i-1>=0) //将m[100]中的2进制输出
{
printf("%d",m[i-1]);
i--;
}
return 0;
}
第2个回答  2013-11-11
#include<stdio.h>
void main()
{ int i,s=0,n;
unsigned int x;
scanf("%d",&n);
for ( i=0,x=0x80000000;i<32;i++,x>>=1 )
if ( n&x ) { s=1; printf("1"); }
else if ( s ) printf("0"); //去掉前导0
printf("\n");
}追问

现在我C程序与设计都学完了。好吧,还是看不懂。x=0x80000000和下面那个if ( n&x ) { s=1; printf("1"); } else if ( s ) printf("0");完全看不懂

本回答被网友采纳
第3个回答  2013-11-11
十进制转化二进制有自己的算法,楼主记住就好了。

相关了解……

你可能感兴趣的内容

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