编程中数字转换为十进制的方法取决于数字的进制。以下是二进制、八进制和十六进制转换为十进制的方法:
二进制转十进制
算法:将二进制数的每一位与2的对应次幂相乘,然后将这些乘积相加。
Python示例代码:
```python
binary_num = "1011"
decimal_num = int(binary_num, 2)
print(decimal_num) 输出:11
```
C语言示例代码:
```c
include int main() { char binary_num[] = "1011"; int decimal_num; decimal_num = strtol(binary_num, NULL, 2); printf("%d\n", decimal_num); // 输出:11 } ``` 算法:从右到左,将每个八进制位乘以8的相应幂次,然后将结果相加。 C语言示例代码: ```c include int main() { int octalNum, decimalNum = 0, i = 0; printf("Enter an Octal number: "); scanf("%o", &octalNum); // %o specifier to read octal number while (octalNum != 0) { int rem = octalNum % 10; octalNum /= 10; decimalNum += rem * pow(8, i); i++; } printf("Decimal number: %d\n", decimalNum); return 0; } ``` 算法:将每个十六进制位乘以16的相应次幂,然后将这些乘积相加。 Python示例代码: ```python hex_num = "ff" decimal_num = int(hex_num, 16) print(decimal_num) 输出:255 ``` C语言示例代码: ```c include int main() { char hex_num[] = "ff"; int decimal_num = 0; for (int i = 0; i < strlen(hex_num); i++) { decimal_num += (hex_num[i] - '0') * pow(16, strlen(hex_num) - 1 - i); } printf("Decimal number: %d\n", decimal_num); // 输出:255 } ``` 这些方法可以帮助你在不同的编程语言中实现数字的进制转换。八进制转十进制
十六进制转十进制