>例:从键盘输入浮点数a、b、c,求方程ax2+ bx +c =0的根。假设输入满足b2 - 4ac > 0。编程思路:如果b22一4ac ≥0,则方程有两个实根:-b-Vb2-4ac-b+Vb2-4ac和x2 = x1 =2a2aVb2-4ac-b若记p=q=2a2a则x1 =p+q, x2=p-q保留所有权利16
版 权 所 有 © 陈 哲 保 留 所 有 权 利 ➢例:从键盘输入浮点数a、b、c,求方程 𝑎𝑥 2 + 𝑏𝑥 + 𝑐 = 0的根。假设输入满足 𝑏 2 − 4𝑎𝑐 > 0。 编程思路:如果𝑏 2 − 4𝑎𝑐 ≥ 0,则方程有两 个实根: 𝑥1 = −𝑏+ 𝑏 2−4𝑎𝑐 2𝑎 和 𝑥2 = −𝑏− 𝑏 2−4𝑎𝑐 2𝑎 若记𝑝 = −𝑏 2𝑎 ,𝑞 = 𝑏 2−4𝑎𝑐 2𝑎 则𝑥1 = 𝑝 + 𝑞,𝑥2 = 𝑝 − 𝑞 16
#include <stdio.h>#include <math.h>int main(double a,, b, c, disc,, p, q,, xl, x2;scanf("%lf%lf%lf",&a,&b,&c);disc = b * b - 4 * a * c;p = -b / (2.0 * a);q = sqrt(disc) / (2.0 * a);xl = p + q;版权所有@陈暂保留所有权x2 = p - q;printf("xl = %7.2f\nx2 = %7.2f/n", xl, x2);return O;17
版 权 所 有 © 陈 哲 保 留 所 有 权 利 #include <stdio.h> #include <math.h> int main() { double a, b, c, disc, p, q, x1, x2; scanf("%lf%lf%lf", &a, &b, &c); disc = b * b - 4 * a * c; p = -b / (2.0 * a); q = sqrt(disc) / (2.0 * a); x1 = p + q; x2 = p - q; printf("x1 = %7.2f\nx2 = %7.2f\n", x1, x2); return 0; } 17