m0_63658942 2022-02-27 10:59 采纳率: 100%
浏览 14
已结题

浮点数运算结果精度不正确

问题遇到的现象和发生背景

img

问题相关代码,请勿粘贴截图
运行结果及报错内容
我的解答思路和尝试过的方法
我想要达到的结果

#include <stdio.h>
#include <stdlib.h>
#include <math.h>

/* run this program using the console pauser or add your own getch, system("pause") or input loop */

double zhishu2(double j,double a){
    double res;
    while(j<0){
        a/=8;
        j++;
    }
    return res;
}
int main() {
    int T,i,j,x,k,y,a;
    double o,result;
    char num[50];
    scanf("%d",&T);//问题数
    for(i=0;i<T;i++){
        scanf("%s",num);
        j=2;k=-1;result=0;
        while(num[j]!='\0'){
            a=num[j]-'0';
            result+=zhishu2(k,a);                
            j++;k--;
        }
        printf("case #%d:\n%.*lf\n",i,3(j-2),result);
    } 
    return 0;
}
  • 写回答

1条回答 默认 最新

  • 插件开发 2022-02-27 11:36
    关注

    使用高精度函数库

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 3月11日
  • 已采纳回答 3月3日
  • 创建了问题 2月27日