用c++将二进制转为十进制
时间: 2024-02-01 08:03:43 浏览: 117
以下是将二进制转为十进制的C代码:
#include <stdio.h>
#include <math.h>
int main()
{
long long bin, dec = 0;
int i = 0, rem;
printf("Enter a binary number: ");
scanf("%lld", &bin);
// converting binary to decimal
while (bin != 0)
{
rem = bin % 10;
bin /= 10;
dec += rem * pow(2, i);
++i;
}
printf("Decimal number is: %lld", dec);
return 0;
}
代码解释:
- 首先,我们定义了一个长整型变量
bin
和一个整型变量dec
,bin
用于存储输入的二进制数,dec
用于存储转换后的十进制数。 - 然后,我们使用
printf()
函数提示用户输入二进制数,并使用scanf()
函数读取用户输入的二进制数。 - 接着,我们使用一个
while
循环将二进制数转换为十进制数。在循环中,我们使用%
运算符获取二进制数的最后一位(即余数),并将其乘以2的i次方,其中i表示当前位数(从0开始)。然后,我们将二进制数除以10,以便在下一次迭代中获取下一位。最后,我们将所有乘积相加,得到十进制数。 - 最后,我们使用
printf()
函数显示转换后的十进制数,并使用return 0
语句结束程序。
相关推荐
















