include"stdio.h"
#include"math.h"
main()
{
char b[20];
int m,c;
long sum=0,n;
printf("output a digit:");
scanf("%s",&b);
m=(int)strlen(b);
printf("m=%d\n",m);
for(c=m-1;c>=0;c--)
{
n=(long)pow(2,c);
sum=sum+(b[c]-48)*n;
}
printf("sum=%ld\n",sum);
}
实现二进制转换成十进制~sum=sum+(b[c]-48)*n;
此地方有错误不会改~测试数据1011