问题:
将二进制数转换为十进制
Sample Input:
3
100
001
10100
Sample Output
4
1
20
代码实现:
// 将二进制转换为十进制
#include<iostream>
#include<cstring>
#include<cmath>
using namespace std;
int main() {
int t, len, sum;
string str;
int arr[100];
cin >> t;
while (t--) {
sum = 0;
cin >> str;
len = str.length();
for (int i = 0; i < len; ++i) arr[i] = str[i] - '0';
for (int i = 0; i < len; ++i) {
if (arr[i] == 1)
sum += pow(2, len - i - 1);
}
cout << sum << endl;
}
return 0;
}