JS中十进制转化为八进制前面加0出现错误

前面加0会出现红线

前面加0o(零和小写的o)就不会了

在不同的编程语言中,将其他进制强制转化为十进制有不同的方法,下面分别介绍C语言和JavaScript的实现方式: ### C语言 在C语言里,可通过编写程序手动实现进制转换。以二进制转十进制为例,可利用逐位处理的方式,将每一位乘以对应位权再累起来。以下是示例代码: ```c #define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #include <math.h> int main() { int i = 0; // 循环次数 int n = 0; // 输入的二进制数 double bit = 0; double decimalValue = 0; // 十进制结果,使用double类型避免类型转换错误 printf("请输入一个二进制数:"); scanf("%d", &n); // 逐位处理二进制数 for (i = 1; n != 0; ) { bit = n % 10; decimalValue = decimalValue + pow(2, i - 1) * bit; // 第一位不乘,第二位是2的一次方 i++; n = n / 10; } printf("十进制数是%d", (int)decimalValue); // int强制转换,使pow返回的double类型,最后打印为整形 return 0; } ``` 上述代码先读取一个二进制数,接着逐位处理该二进制数,把每一位乘以对应位权(2的幂)并累,最终得到十进制结果。 ### JavaScript 在JavaScript中,可使用`parseInt()`函数将其他进制的字符串转换为十进制数。该函数的第一个参数是要转换的字符串,第二个参数是该字符串表示的进制,若不传第二个参数,默认按十进制处理。以下是示例代码: ```javascript /* 52 二进制:110100 八进制:64 十六进制:34 */ var str1 = "110100"; alert(parseInt(str1, 2)); var str2 = "64"; alert(parseInt(str2, 8)); var str3 = "34"; alert(parseInt(str3, 16)); ``` 上述代码分别将二进制字符串`"110100"`、八进制字符串`"64"`和十六进制字符串`"34"`转换为十进制数并弹出显示结果。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值