请补充main函数,该函数的功能是求方程ax2+bx+c=0的两个实数根。方程的系数a、b、c从键盘输入,如果判别式 (disc=b2-4ac)小于0,则要求重新输入a、b、c的值。 例如,当a=1,b=2,c=1时,方程的两个根分别是x1=-1.0

admin2009-02-15  86

问题 请补充main函数,该函数的功能是求方程ax2+bx+c=0的两个实数根。方程的系数a、b、c从键盘输入,如果判别式 (disc=b2-4ac)小于0,则要求重新输入a、b、c的值。
   例如,当a=1,b=2,c=1时,方程的两个根分别是x1=-1.00, x2=-1.00。
   注意:部分源程序给出如下。
   请勿改动主函数main和其他函数中的任何内容,仅在函数fun()的横线上填入所编写的若干表达式或语句。
   试题程序:
   #include"math.h"
   #include <stdio.h>
   main()
   {
   float a,b,C,disc,X1,x2;
       clrscr();
       do
   {
          printf("Input a,b,C:");
    scanf("%f,%f,%f",&a,&b,ac);
          disc=b*b-4*a*c;
          if(disc<0)
             printf("disc=%f\n Input again!
                   \n",disc);
   }while(【  】);
   printf("****+* the  result *+*****\n");
   x1=【  】;
   x2=【  】;
   printf("\nx1=%6.2f\nx2=%6.2f\n",x1/x2);
   }

选项

答案disc<0 (-b+sqrt(disc))/(2*a) (-b-sqd(disc))/(2*a)

解析 第一空:题目要求当判别式disc小于0时,要重新输入a、b、c的值,所以do--while循环的执行条件是disc<0。
第二空:方程ax2+bx+c=0的一个实数根是:。第三空:方程ax2+bx+c=0的另一个实数根是:
转载请注明原文地址:https://kaotiyun.com/show/UTID777K
0

最新回复(0)