给定程序blank1.c中主函数的功能是输入一个实数a,根据迭代公式x1=(x0+a/x0)/2,计算并输出其平方根。要求误差不超过 1e-6(0.000001)。 请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。 注

admin2023-02-27  7

问题 给定程序blank1.c中主函数的功能是输入一个实数a,根据迭代公式x1=(x0+a/x0)/2,计算并输出其平方根。要求误差不超过
1e-6(0.000001)。
    请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
    注意:不得增行或删行,也不得更改程序的结构!
1 #include
2 main()
3 {
4    double a,x0,x1;
5    printf("输入一个实数,本程序计算并输出其平方根\n");
6    do
7  /*********found*********/
8  【1】
9  while(a<=0);
10  x1=a/2.0;
11  do
12  {
13  /*********found*********/
14    2【2】
15    x1=(x0+a/x0)/2.0;
16  /*********found*********/
17    }while((x1-x0)>1e-6【3】);
18  printf("%f的平方根是%f\n",a,x1);
19 }

选项

答案(1)scanf("%lf",&a); (2)x0=x1; (3)|| x|-x0<-1e-6

解析 (1)输入一个实数存放变量a,故空1处应该填scanf("%lf",&a);。
    (2)x1=a/2.0,x0=x1,x1=(x0+a/x0)/2.0,在do-while循环中不断迭代值,最终找到x的值为a的平方根,故空2处应该填x0=x1;。
    (3)要求误差不超过le-6,x1-x0的值可能为负值,故空3处应该填||x1-x0<-1e-6。  
转载请注明原文地址:https://kaotiyun.com/show/LJ0D777K
0

随机试题
最新回复(0)