
指导师老郭为您分享以下优质知识
以下是一个将8位二进制转换为十进制数的C语言程序示例,综合了多种实现方法:
方法一:逐位计算法
通过逐位乘以2的幂次求和实现转换
```c
include
int binaryToDecimal(char *binary) {
int decimal = 0;
int length = strlen(binary);
// 确保输入为8位二进制
if (length != 8 || (binary != '0' && binary != '1')) {
printf("输入无效,请输入8位二进制数(如00001010)n");
return -1;
}
for (int i = 0; i < length; i++) {
int bit = binary[i] - '0';
if (bit != 0 && bit != 1) {
printf("输入包含非法字符,请确保全为0或1n");
return -1;
}
decimal += bit * (1