二进制转十进制
输入为一个二进制大整数(大整数大于0,不带符号,无前导0,至少1位数字,且不超过100位数字)。要求将该整数转换成十进制数,并输出。建议:用字符数组存储大整数
输入样例
1001001100101100000001011010010
输出样例
1234567890
#include <stdio.h>
#include<string.h>
#include<math.h>
int main()
{
int i,m,j;
long long x=0;
char a[101];
gets(a);
m=strlen(a);
for(i=0;i<m;i++)
{
j=m-1-i;
if(a[i]==49)
x+=pow(2,j);
}
printf("%lld\n",x);
return 0;
}
试了好几次,答案都是对的,但是提交后却不能通过