二进制转换成十进制的C语言代码
时间: 2024-06-23 13:02:24 浏览: 93
在C语言中,将二进制数转换为十进制数可以使用循环和乘法的方法,因为每个二进制位的值都是2的幂次方。这里有一个简单的示例代码片段:
```c
#include <stdio.h>
#include <math.h>
// Function to convert binary to decimal
int binaryToDecimal(int binary) {
int decimal = 0;
int base = 1;
while (binary != 0) {
int remainder = binary % 10; // Get the rightmost digit
decimal += remainder * base; // Multiply by the current power of 2
binary /= 10; // Shift the bits to the left
base *= 2; // Increase the power for the next iteration
}
return decimal;
}
int main() {
int binary_num;
printf("Enter a binary number: ");
scanf("%d", &binary_num);
int decimal_num = binaryToDecimal(binary_num);
printf("The decimal equivalent is: %d\n", decimal_num);
return 0;
}
```
在这个代码中,`binaryToDecimal` 函数接收一个二进制数作为参数,通过迭代处理每一位,并根据位的权重(2的幂)将其加到结果上。`main` 函数则获取用户输入的二进制数并调用这个函数。
阅读全文