用c语言编写 输入一个二进制数,输出一个十进制数

如题所述

lude "stdlib.h"
main()
{
int n,x=0,a[100];
printf("请输入转换的数和进制:\n");
scanf("%d",&n);
while(n){
a[x++]=n%2;
n/=2;
}
--x;
while(x>=0) printf("%d",a[x--]);
printf("\n");
system("pause");
}
再送你一个进制转换的

问题:把十进制数转换为其它进制
#include "stdio.h"
#include "stdlib.h"
main()
{
int n,k;
char *str="0123456789ABCDEF";
printf("请输入转换的数和进制:\n");
scanf("%d%d",&n,&k);
int px=0,a[128];
while(n){
a[px++]=n%k;
n/=k;
}
--px;
while(px>=0) printf("%c",str[a[px--]]);
printf("\n");
system("pause");
}
温馨提示:内容为网友见解,仅供参考
第1个回答  2011-03-06
#include<stdio.h>
void main()
{ int i,chan=0;
char orig[100];
printf("input the numbers:");
gets(orig);
for(i=0;orig[i]!='\0';i++)
chan=chan*2+(orig[i]-48);/*字符转换成十进制数*/
printf("%d\n",chan) ;
}
第2个回答  2011-03-05
路过 他回答的很好了 不用补充了 很好
第3个回答  推荐于2017-10-02
#include"stdio.h"
int fun(int i, int n)
{
int m=1;
for(int j=0;j<i;j++)
m*=n;
return m;
}
void main()
{
long a;
int i=0,b=0;
scanf("%d",&a);
while(a>0)
{
b+=a%10 * fun(i,2);
i++;
a=a/10;
}
printf("%d",b);
}本回答被提问者采纳

C语言问题:输入一个二进制数,输出其对应的十进制数。(包括正数、负数...
11(二进制)=3 (十进制) 对了要加分

求用C语言编写代码,输入二进制数,输出十进制数,八进制数,十六进制数
\/\/#include "stdafx.h"\/\/vc++6.0加上这一行.include "stdio.h"void main(void){ char binary[33],i=0,x;int n=0;printf("Type a binary(<33 bit)...\\n");while((x=getchar())=='0' || x=='1'){ binary[i++]=x;if(i==33) break;} binary[i]='\\0';for(i=0;b...

怎么用c语言循环编写二进制转为十进制
int n;printf("请输入一个二进制数:\\n");scanf("%d",&n);printf("它的十进制形式为: %d\\n",change(n));system("pause");return 0;}

c语言,将一个二进制数转换成10进制数输出?
将二进制转成十进制,按权值展开求和即可。可以通过以下代码解决:include <stdio.h> include <stdlib.h> int main(){ char a[17];gets(a);int len,i,sum=0,m,j;len=strlen(a);if(len<=16){ for(i=0;i<len;i++){ m=1;if(a[i]=='1'){ for(j=1;j<=len-i-1;j++)m*...

如何使用C语言编写二进制转换为十进制的程序
include <stdio.h>#include <math.h>#include <string.h>\/* 任意进制数转十进制数 *\/\/* char *value : 其他进制数,以字符串形式存储 *\/\/* int *result : 转换后的十进制数 *\/\/* int radix : 待转换的进制 *\/\/* R进制数共n位,第n位表示为Xn。转换后的10进制数表示为Y *\/\/* Y...

C语言:编程实现二进制数转换成十进制数
h> int main(){ int a=0,b=0,c=0;printf("请输入一个二进制数:");scanf("%d",&a);\/\/这里我就不对输入进行检查了 for(int i=0;;i++){ if(a==0)break;b=a%2;a=a\/10;for(int j=i;j>0;j--){ if(b==0)break;else b=b*2;} c+=b;} printf("%d",c);} ...

c语言把二进制数转换成十进制数的程序怎么写。
需要准备的材料分别有:电脑、C语言编译器。1、首先,打开C语言编译器,新建一个初始.cpp文件,例如:test.cpp。2、在test.cpp文件中,输入C语言代码:int a = 0b10000001;printf("%d", a);。3、编译器运行test.cpp文件,此时输入的8位二进制数被成功用十进制进行了输出。

c语言把二进制数转换成十进制数的程序怎么写.输入
include<stdio.h> include<string.h> void main(){ char a[10000];int i, num = 0;scanf("%s", &a);for(i=strlen(a)-1; i>=0; i--){ num*=2;num+=a[i]-'0';} printf("%d\\n", num);}

C语言 将一个二进制数,转换为对应的十进制数。
int main(){ int a[10] = {1,0,0,1,0,1,1,0,0,0};\/\/这里只是预先写好的二进制数,可以自行改为主动输入,主要体现过程 int i = 0;int sum = 0;for(i = 9;i>=0;i--)\/\/9为数组最后一位 { sum = sum + a[i];pow(2,abs(i-9));\/\/i- 9 的绝对值判定乘以2 的几...

C语言中如何用循环实现二进制数转换成十进制数
void main(){ cout<<"请输入二进制数";char num[30];char num2[30];cin.getline(num,30);for(int i=0;num[i];i++){ num2[i]=num[i]-'0';\/\/把字符型转成整型 } \/\/补充 int result = 0;for(int j=0;j<i;j++){ if(num2[j])result += pow(2,i-j-1);} cout <<...

相似回答