【发布时间】:2015-09-22 14:26:36
【问题描述】:
#include <stdio.h>
#include <math.h>
void main() {
long int on, temp;
int dn = 0, e = 0, digit;
printf("Enter octal number : ");
scanf("%ld", &on);
temp = on;
while (on != 0) {
digit = on % 10;
dn += digit * pow(8, e);
e++;
on /= 10;
}
printf("octal number = %ld \n", temp);
printf("Decimal number= %d \n", dn);
return 1;
}
嗨,美好的一天。我有这段代码可以将八进制数转换为十进制,但我的问题/问题是如何制作一个将八进制十进制数转换的代码。示例:
0.758 → ___10
0.000018 → ___10
在转换中,您必须将每个数字乘以 8 的平方 (8,64,542...)
我需要这方面的帮助。
【问题讨论】:
-
首先,请缩进你的代码
-
你把事情搞混了。八进制、十六进制等等,都是字符串内的整数的可能表示形式。一旦一个数字被这样存储,它就是二进制的,你不会看到字符串内部的外部编码有什么不同。