c语言求一元二次方程的解
C语言要求一个一元二次方程的解,直接使用求根公式即可,首先声明一个变量delta,它定义为b*b-4*a*c,如果delta小于0,说明它没有实数根,直接提示错误并返回,如果delta等于0,那么有两个相同实根,只需要打印出这个根即可,如果delta大于0,那么有2个不同实根,需要使用-b±√delta/2a来进行求解。
用c语言怎么解一元多次方程
现在让我来和大家一起分享以下C语言简单编程之一元二次方程求解过程吧。
1、输入# include
# include
void main(void)
2、输入void main(void)
{
double a,b,c,x1,x2;
cout<<"input a,b,c:";
cin>>a>>b>>c;
double s=b*b-4*a*c;
if(s>=o)
3、输入{
double sqrtVal=sqrt(s);
x1=(-b+sqrtVal)/(2*a);
x2=(-b-sqrtVal)/(2*a);
cout<<"x1="<cout<<"x2="<}
4、输入else
cout<<"this question does not hava a real answer"<
}
这样就可以得出答案了。
C语言要求一个一元二次方程的解,直接使用求根公式即可,
首先声明一个变量delta,它定义为b*b-4*a*c,如果delta小于0,说明它没有实数根,直接提示错误并返回,
如果delta等于0,那么有两个相同实根,只需要打印出这个根即可,如果delta大于0,那么有2个不同实根,需要使用-b±√delta/2a来进行求解。
c语言一元二次方程求解(包含复根)
编写函数root(double a,double b,double c)和main(),在主函数中输入一元二次方程的系数x,y,z,然后调用root函数求解此方程的根(实根和复根)并输出。
代码:
#include <stdio.h>
#include <math.h>
void root(double a,double b,double c);
void main(){
double x,y,z;
printf("请输入一元二次方程x-y-z的值:");
scanf("%lf,%lf,%lf",&x,&y,&z);
root(x,y,z);
}
void root(double a,double b,double c){
double p,x1,x2;
p=b*b-4*a*c;
if(p>0){
x1=(-b+sqrt(p))/(2*a);
x2=(-b-sqrt(p))/(2*a);
printf("方程有两个不同的实根:x1=%.2lf,x2=%.2lf\n",x1,x2);
}
else if(p==0){
x1=(-b)/(2*a);
printf("方程有两个相同的实根:x1=x2=%.2lf\n",x1);
}else{
x1=(-b)/(2*a);
x2=sqrt(fabs(p))/(2*a);
printf("方程有两个不同的虚根:x1=%.2lf+%.2lfi,x2=%.2lf-%.2lfi\n",x1,x2,x1,x2);
}
}
测试1:
测试2:
测试3: