用C语言写一个关于一元二次方程求解的代码
#include <stdio.h>
#include <math.h>
int main()
{
double a, b, c;
double delta, x1, x2;
printf("请输入一元二次方程的系数:\n");
printf("a = ");
scanf("%lf", &a);
printf("b = ");
scanf("%lf", &b);
printf("c = ");
scanf("%lf", &c);
delta = b * b - 4 * a * c;
if (delta < 0)
{
printf("方程无实数解。\n");
}
else if (delta == 0)
{
x1 = x2 = -b / (2 * a);
printf("方程的解为:x1 = x2 = %.2lf\n", x1);
}
else
{
x1 = (-b + sqrt(delta)) / (2 * a);
x2 = (-b - sqrt(delta)) / (2 * a);
printf("方程的解为:x1 = %.2lf,x2 = %.2lf\n", x1, x2);
}
return 0;
}
该代码首先从用户输入中获取一元二次方程的系数 a、b、c,然后计算判别式 delta,并根据 delta 的值分别进行判断,输出相应的解。如果 delta < 0,则说明方程无实数解;如果 delta = 0,则说明方程有两个相等的实数解;如果 delta > 0,则说明方程有两个不相等的实数解。在计算解时,需要使用数学库中的 sqrt 函数来进行平方根的计算。
原文地址: https://www.cveoy.top/t/topic/bJaD 著作权归作者所有。请勿转载和采集!