c语言 二进制转十进制
时间: 2023-12-07 22:04:22 浏览: 70
C语言中,可以通过循环和取余运算来实现二进制转十进制的功能。具体步骤如下:
1. 定义一个变量sum,用于存储转换后的十进制数。
2. 从二进制数的最右边一位开始,依次取出每一位的值,将其乘以2的相应次方,然后累加到sum中。
3. 每次取出一位后,将二进制数除以10,以便取下一位。
4. 循环直到二进制数变为0为止。
5. 最后输出sum即为转换后的十进制数。
下面是一个示例代码:
```
#include <stdio.h>
int main() {
int binary, decimal = 0, base = 1, rem;
printf("请输入一个二进制数:");
scanf("%d", &binary);
while (binary > 0) {
rem = binary % 10;
decimal += rem * base;
binary /= 10;
base *= 2;
}
printf("转换后的十进制数为:%d\n", decimal);
return 0;
}
```
相关问题
c语言二进制转十进制
在C语言中,可以使用`strtol()`函数将二进制字符串转换为十进制整数。
下面是一个示例代码:
```c
#include <stdio.h>
#include <stdlib.h>
int main()
{
char binaryStr[] = "1101";
char *endptr;
long decimalNum = strtol(binaryStr, &endptr, 2);
printf("Binary: %s\n", binaryStr);
printf("Decimal: %ld\n", decimalNum);
return 0;
}
```
输出结果:
```
Binary: 1101
Decimal: 13
```
在上面的代码中,`strtol()`函数的第二个参数是一个指向指针的指针,用于存储转换后的字符串的后面未转换的部分。在这个例子中,`endptr`指向字符串的结束符号`\0`。`strtol()`函数的第三个参数指定了输入字符串的进制,这里是2表示二进制。
c语言二进制转十进制代码
当用户输入一个二进制数时,可以使用以下代码将其转换为十进制数:
```
#include <stdio.h>
#include <math.h>
int main() {
long long binary;
int decimal = 0, i = 0, remainder;
printf("请输入一个二进制数:");
scanf("%lld", &binary);
while (binary != 0) {
remainder = binary % 10;
binary /= 10;
decimal += remainder * pow(2, i);
++i;
}
printf("该二进制数的十进制数为:%d", decimal);
return 0;
}
```
这是一个简单的程序,使用了 while 循环将二进制数转换为十进制数。
相关推荐
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![cpp](https://img-home.csdnimg.cn/images/20210720083646.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)