C 语言编程 二进制转十进制 5

谢谢!!是二进制转十进制请看清
匿名
推荐于2016-01-30 05:18:29 最佳答案
二进制转十进制
就是把十进制数除以二每一步的商和余数倒叙排列
如:
十进制数 10
2 |_10
2 |_5
1
二进制为 122

程序为:
#include <stdio.h>
main()
{
int s,i,k;
int r[];
printf("输入十进制数:");
scanf("%d",&a);
i=0;

if(a=1)
b[0]=1;

else
{
while(a>1)
{
b[i++]=a%2;
a/=2;
};
}

for(k=i;k>=0;k--)
{
printf("%d",b[k]);
}

}

godaygirls

采纳率:22% 擅长: 暂未定制

其他回答

\stdio;
scanf("
}

printf(".h>=1)
{
b[i++]=a%2,&a);=2,i=0;);
printf("

void main(void)
{
int a;%d",b[100];
while(a>,k,b[k])#include <enter number;

for(k=i-1;
};k>=0;
a/;n"):"%d"k--)
{
printf("
ljpbxh027 | 发布于2006-01-23 17:13
评论
/*
* 将二进制转换为10进制
*/

#include <stdio.h>
#include <math.h>

int main(void)
{
long int li_value=0;
char s_bin[20];
int i;
char tmp;
int i_len;

memset(s_bin,0x0,sizeof(s_bin));

printf("Enter bin value=");
for(i=0;i<20;i++){
tmp=getchar();
if(tmp=='1'){
s_bin[i]='1';
}else if(tmp=='0'){
s_bin[i]='0';
}else{
break;
}
}
printf("s_bin=[%s]\n",s_bin);

i_len=strlen(s_bin);

for(i=i_len-1;i>=0;i--){
if(s_bin[i]=='1'){
li_value=li_value+pow(2,i_len-1-i);
}
}
printf("Int value=[%d]\n",li_value);
}
moxsone | 发布于2006-01-24 13:14
评论
#include <stdio.h>
#include <string.h>
void main()
{
long int result=0;
char s[80];
while(scanf("%[01]%*c",s)!=1){
fflush(stdin);
};
int len = strlen(s);
for (int i=0;i<len;i++)
result=result*2+((int)(*(s+i))-48);
printf("%ld\n",result);
}
vire | 发布于2006-01-24 09:27
评论
#include <stdio.h>

void main(void)
{
int n,a,N[i],b,c=0;
printf("输入您二进制位数");
scanf("%d",&n);
printf("输入您二进制数");
for (i=1;i<=n;i++);
{
scanf("%d",&a);
b=a*2^(i-1);
c=c+b;
}
printf("输入您十进制数d",c);
}

好象有两位仁兄的程序是将十进制转化为二进制吧
huahenque | 发布于2006-01-27 20:35
评论
收起 其他2条回答

为您推荐:

广告

您可能关注的内容