二进制转换为十进制C语言代码
时间: 2024-10-09 07:02:20 浏览: 36
C语言十进制转二进制代码实例
5星 · 资源好评率100%
在C语言中,将二进制数转换成十进制可以使用循环和数学运算来进行。以下是一个简单的函数示例,它接收一个字符串形式的二进制数并返回其对应的十进制值:
```c
#include <stdio.h>
#include <string.h>
int binaryToDecimal(char* binaryStr) {
int decimal = 0;
int base = 1;
int len = strlen(binaryStr);
for (int i = len - 1; i >= 0; i--) {
if (binaryStr[i] == '1') {
decimal += base;
}
base *= 2; // 增加基数,因为下一位的权值是上一位的两倍
}
return decimal;
}
// 示例用法
int main() {
char binaryNum[] = "1010";
printf("Binary %s is equal to decimal %d\n", binaryNum, binaryToDecimal(binaryNum));
return 0;
}
```
这个程序从右向左遍历输入的二进制字符串,每次遇到'1'就将其对应的权重(当前`base`乘以2)加到`decimal`上。当遍历完整个二进制字符串后,就会得到十进制结果。
阅读全文