算法训练之进制转换

1125: 算法训练 进制转换

时间限制: 1 Sec  内存限制: 512 MB
提交: 4  解决: 4
[提交][状态][讨论版]

题目描述

编写一个程序,输入一个二进制的字符串(长度不超过32),然后计算出相应的十进制整数,并把它打印出来。

输入

输入为一个字符串,每个字符都是’0’’1’,字符串的长度不超过32


输出

输出一个整数。

样例输入

1101

样例输出

13

提示

来源


#include<iostream>
#include<string>
#include<stdio.h>
#include<string.h> 
using namespace std;
int bin(char a[])
{
	int sum=0,i,k;
	for(i=strlen(a)-1;i>=0;i--)
	{
		if(i==strlen(a)-1)
		 k=1;
		 else
		 k=k*2;
		sum=(a[i]-'0')*k+sum;
	}
	return sum;
}
int main()
{
	char a[40];
	cin>>a;
	cout<<bin(a)<<endl;
	return 0;
}


posted @ 2017-01-20 12:44  X_na  阅读(160)  评论(0)    收藏  举报