#2012. C语言程序设计教程(第三版)课后习题8.2

C语言程序设计教程(第三版)课后习题8.2

说明

编写程序,求一元二次方程 $ax^2 + bx + c = 0$ 的根。要求分别用三个函数处理以下三种情况:

  • 当 $b^2 - 4ac > 0$ 时,输出两个不相等的实根;
  • 当 $b^2 - 4ac = 0$ 时,输出两个相等的实根;
  • 当 $b^2 - 4ac < 0$ 时,输出一对共轭复根。

主函数负责输入 $a$、$b$、$c$ 的值,并调用相应的函数输出结果。

输入格式

输入一行,包含三个实数 $a$、$b$、$c$,用空格分隔。 任意实数<=65535

输出格式

  • 若有两个实根,输出格式为:x1=? x2=?
  • 若有两个相等的实根,输出格式为:x=?
  • 若有一对复根,输出格式为:x1=?+?i x2=?-?i
  • 所有数字保留三位小数,数字与符号之间无多余空格。
4 1 1
x1=-0.125+0.484i x2=-0.125-0.484i