流光千仞 发表于 2021-4-4 22:47:57

scanf的使用

求大佬解惑,为什么不论我输入什么输出的a都是0.
#include<stdio.h>
#include<math.h>
main()
{
        double B,a,b,c,d,e,f,g,h,i,j;
        scanf("%f",&a);
    b=0.05+a;
        c=pow(b,2);
        d=0.01+c;
        e=pow(d,(-1.5));
        f=0.05+a;
        g=pow(b,2);
        h=0.01+c;
        i=pow(d,(-1.5));
        j=e+i;
        B=3.14159*j;
        printf("a=%f\n",a);
        printf("b=%f\n",b);
        printf("c=%f\n",c);
        printf("d=%f\n",d);
        printf("e=%f\n",e);
        printf("f=%f\n",f);
        printf("g=%f\n",g);
        printf("h=%f\n",h);
        printf("i=%f\n",i);
        printf("j=%f\n",j);
        printf("B=%f\n",B);

        return 0;
}

qiuyouzhi 发表于 2021-4-4 22:55:26

把所有%f都改成%lf

小甲鱼的二师兄 发表于 2021-4-5 02:16:56

或者把double改成float

流光千仞 发表于 2021-4-5 12:32:44

原来如此,谢谢二位大佬。
页: [1]
查看完整版本: scanf的使用