二进制转化为十进制C++
时间: 2023-08-30 09:09:16 浏览: 96
可以使用以下代码将二进制转换为十进制:
```c
#include <stdio.h>
#include <math.h>
int main() {
int binary, decimal = 0, i = 0, remainder;
printf("Enter a binary number: ");
scanf("%d", &binary);
while (binary != 0) {
remainder = binary % 10;
binary /= 10;
decimal += remainder * pow(2, i);
i++;
}
printf("Decimal number is: %d", decimal);
return 0;
}
```
首先,我们输入一个二进制数,并使用 while 循环将其转换为十进制数。在循环中,我们将二进制数从右向左逐个取出每一位,并将其乘以对应的权重,然后将其相加得到十进制数。最后,我们输出十进制数。
相关问题
二进制转化为十进制c++ 代码
将二进制转化为十进制可以使用以下代码:
```c++
#include <iostream>
#include <cmath>
using namespace std;
int main() {
string binary;
cout << "请输入一个二进制数:";
cin >> binary;
int decimal = 0;
for (int i = 0; i < binary.length(); i++) {
decimal += (binary[i] - '0') * pow(2, binary.length() - i - 1);
}
cout << "转化为十进制为:" << decimal << endl;
return 0;
}
```
该代码首先读入一个二进制数,然后使用循环和幂函数将其转化为十进制数,并输出结果。
--相关问题--:
1. 如何将十进制转化为二进制?
2. 如何将十进制转化为八进制或十六进制?
二进制转化为十进制c++语言
二进制转化为十进制的C++代码如下:
```
#include <iostream>
#include <cmath>
using namespace std;
int main() {
int binary, decimal = 0, base = 1;
cout << "请输入一个二进制数:";
cin >> binary;
while (binary > 0) {
int digit = binary % 10;
decimal += digit * base;
base *= 2;
binary /= 10;
}
cout << "转换后的十进制数为:" << decimal << endl;
return 0;
}
```
该代码首先要求用户输入一个二进制数,然后通过循环将其转换为十进制数。在循环中,我们首先取出二进制数的最后一位,然后将其乘以对应的权重(2的幂次方),并将结果加到十进制数中。接着,我们将权重乘以2,以便在下一次循环中使用。最后,我们将二进制数除以10,以便在下一次循环中取出下一位。循环将一直执行,直到二进制数变为0为止。
阅读全文