八进制小数转换为十进制小数

#include<stdio.h>
#include<math.h>
#include<string.h>
#define maxnum 42

//将八进制小数(0,1)转换为十进制小数
//oct中只输入小数位. 
int main(void) {
	char oct[maxnum+1];
	gets(oct);
	int len = strlen(oct);
	double res = 0;
	for(int i=0;i<len;i++) {
		int temp = i+1;
		res += (double)(oct[i]-'0') * pow(0.125, temp);
	}
	printf("%lf",res);
}

点赞