1、 二进制转十进制
int binaryToDecimal(long long bin);
int main() {
printf("二进制转十进制:%d
",binaryToDecimal(0b1010));
}
#pragma 二进制转十进制
int binaryToDecimal(long long bin) {
int index = 1 , sum = 0;
do {
if(bin & 1) sum = index;
index *= 2;
} while (bin >>= 1);
return sum;
}
2、十进制转二进制
long long decimalToBinary(int dec);
int main() {
printf("十进制转二进制:%lld
",decimalToBinary(10));
}
#pragma 十进制转二进制
long long decimalToBinary(int dec) {
int index = 1 , sum = 0;
while (dec) {
if(dec % 2) sum = index;
index *= 10;
dec = dec / 2;
}
return sum;
}
3、二进制字符串转十进制
int strBinaryToDecimal(char str[])
int main() {
printf("二进制字符串转十进制:%d
",strBinaryToDecimal("1010"));
}
#pragma 二进制字符串转十进制
int strBinaryToDecimal(char str[]) {
int index = 1 , sum = 0;
unsigned long top = strlen(str);
while (top) {
sum = (str[top-1] - 0) * index;
index *= 2;
top--;
}
return sum;
}
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至123456@qq.com 举报,一经查实,本站将立刻删除。