C语言-一元二次方程(求根公式)

时间:2024-12-11 07:19:53

逻辑概念:

        一元二次方程的格式为:ax²+bx+c=0(a≠0)

        求根公式为:Δ = b²-4×a×c

         

        这个程序需要用到头文件#include <>当中的sqrt()函数

        sqrt()函数用于计算一个非负实数的平方根(即开根号)。

代码示例:

  1. #include <>
  2. #include <>
  3. int main()
  4. {
  5. float a,b,c,q;
  6. float x1,x2;
  7. printf("Please enter the a:");
  8. scanf("%f",&a);
  9. printf("Please enter the b:");
  10. scanf("%f",&b);
  11. printf("Please enter the c:");
  12. scanf("%f",&c);
  13. q = b*b - 4*a*c;
  14. x1 = (-b+sqrt(q)) / (2*a);
  15. x2 = (-b-sqrt(q)) / (2*a);
  16. printf("\n方程为%.1fx²+%.1fx+%.1f=0\n",a,b,c);
  17. if(q < 0)
  18. printf("∵ Δ < 0\n∴ 方程无解\n");
  19. else if(q == 0)
  20. printf("∵ Δ = 0\n∴ x1=x2=%.2f",x1);
  21. else
  22. printf("∵ Δ = %.2f\n开根号得%.2f\n∴ x1=%.2f\nx2=%.2f\n",q,sqrt(q),x1,x2);
  23. return 0;
  24. }

输入示例:

  1. Please enter the a:5
  2. Please enter the b:7
  3. Please enter the c:2

输出示例:

  1. Please enter the a:5
  2. Please enter the b:7
  3. Please enter the c:2
  4. 方程为5.0x²+7.0x+2.0=0
  5. ∵ Δ = 9.00
  6. 开根号得3.00
  7. ∴ x1=-0.40
  8. x2=-1.00

相关文章