求平方跟 为啥输出是零

img

img

img


如图 求a的平方根,为啥a不管输入什么,结果都是0.000🥹。

a是double类型的,scanf输入得是%lf

#include<stdio.h>
#include<math.h>
int main()
{
    double a,x0 = 1.0,x1 = 1.0,k;
    int i;
    scanf("%lf",&a);
    for(i = 1;;i++){
        x0 = x1;
        x1 = 0.5 * (x0 + a / x0);
        k = x1 - x0;
        //printf("k = %lf,x1 = %lf\n",k,x1);
        if(fabs(k) < 0.00001){
            printf("%.3lf",x1);
            break;
        } 
    } 
} 
 

你把scanf,放到double前面,试试,我也是新手,也不是很确定😅😅