给定一个正的二进制数,将其转换为十进制数输出。
例如二进制数:110100101,转成十进制数是:421
例如二进制数:110110110,转成十进制数是:438
输入格式:
一个正的二进制数,其长度不超过31位
输出格式:
对应的十进制正整数
#include<stdio.h>
#include<string.h>
int main(void)
{
char a[31];
int sum=0,i,n,k=1;
scanf("%s",a);
n=strlen(a);
for(i=n-1;i>=0;i--)
{
if(a[i]=='1')
{
sum+=k;
}
k*=2;
}
printf("%d",sum);
return 0;
}