一、已知一元二次方程式:ax²+bx+c=0 (a≠0)。
根据数学公式得到的值为:x=[-b±√(b²-4ac)]/2a。由公式可得结果为两个值。
二、代码截图:
三、代码复制:
#define _CRT_SECURE_NO_WARNINGS 1
//从键盘输入a,b,c计算出一元二次方程的值。
#include<stdio.h>
#include <math.h> //包含的头文件 (因为要用到sqrt()函数求开平方根)。
void shizi() { //定义一个函数用来计算一元二次方程式的结果。
double X1, X2, a, b, c, p; //定义所用到的double类型的变量。
printf("请分别输入a,b,c的值:");
scanf("%lf %lf %lf", &a, &b, &c);//从键盘输入a,b,c的值。
p = (b * b) - (4 * a * c); //p的值要>0;sqrt()开根号不能为负数。
if (p > 0) { //判断p值是否为负数,负数无法被开平方根。
X1 = (-b + sqrt(p)) / (2 * a); //根据数学公式计算出X1,X2的值。
X2 = (-b - sqrt(p)) / (2 * a);
printf("X1=%lf,X2=%lf\n", X1, X2);// 输出结果
}
else {
printf("输入函数值不正确,程序结束!!!");
}
}
int main() {
shizi(); //调用函数
}