首页 > 代码库 > c-八进制 转 十进制
c-八进制 转 十进制
概述
其实x进制转十进制的算法都差不多,不过如果是针对于字符形式,他们却有点不同.使用指针和数组的形式计算,又不同.这里演示将字符型的数组形式的八进制转成十进制:
1 #include <stdio.h> 2 #include <string.h> 3 #include <math.h> 4 5 #define MAX 10 6 7 //初始化数组为八进制. 8 void 9 init(char *octal) {10 gets(octal);11 }12 13 //将八进制转为十进制.14 int15 octalToDecimal(char *octal) {16 int len = strlen(octal); //实际长度.17 int sum = 0; //存储结果.18 int r = 0; //指数.19 for(int i = len - 1; i >= 0; i--)20 sum += pow((float)8, r++) * (octal[i] - ‘0‘);21 return sum;22 }23 24 /*25 八进制转十进制.26 */27 int28 main(void) {29 char octal[MAX];30 gets(octal);31 printf("r=%d", octalToDecimal(octal));32 printf("\n");33 }
c-八进制 转 十进制
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。