当前位置:首页 » 编程语言 » c语言题目求一元二次方程的根
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

c语言题目求一元二次方程的根

发布时间: 2023-01-30 20:25:34

⑴ 用c语言编写求一元二次方程根的程序

#include<stdio.h>
#include<math.h>
intmain()
{
doublea,b,c,disc,x1,x2,realpart,imagpart;
scanf("%lf%lf%lf",&a,&b,&c);
printf("Theequation");
if(fabs(a)<=1e-6)
printf("isnotaquadratic ");
else
{
disc=b*b-4*a*c;
if(fabs(disc)<=1e-6)
printf("hastwoequalroots:%8.4f ",-b/(2*a));
else
if(disc>0)
{
x1=(-b+sqrt(disc))/(2*a);
x2=(-b-sqrt(disc))/(2*a);
printf("hasdistinctrealroots:%8.4fand%8.4f ",x1,x2);
}
else
{
realpart=-b/(2*a);
imagpart=sqrt(-disc)/(2*a);
printf("hascomplexroots: ");
printf("%8.4f+%8.4fi ",realpart,imagpart);
printf("%8.4f-%8.4fi ",realpart,imagpart);
}
}
return0;
}

⑵ 如何用C语言编写一程序求解一元二次方程的根

C语言编写一程序求解一元二次方程的根:

#include<stdio.h>

#include<math.h>

void m(float a,float b,float c)

{

double x1,x2;

x1=(-b+sqrt(b*b-4*a*c))/(2*a);

x2=(-b-sqrt(b*b-4*a*c))/(2*a);

printf("方程的根是%.2lf和%.2lf",x1,x2);

}

void n(float a,float b,float c)

{

double x;

x=(-b)/(2*a);

printf("方程的根为%.2lf",x);

}

void f(float a,float b,float c)

{

printf("方程无实数根 ");

}

main()

{

float a,b,c;

printf("请输入a,b,c的值 ");

scanf("%f%f%f",&a,&b,&c);

if(b*b-4*a*c>0)

m(a,b,c);

if(b*b-4*a*c==0)

n(a,b,c);

if(b*b-4*a*c<0)

f(a,b,c);

}

⑶ c语言 求一元二次方程的根(含复根)

#include "stdio.h"
#include "math.h"
int main(void)
{int a,b,c;
double d,e,f;
scanf("%d %d %d",&a,&b,&c);
d=a, e=b, f=c;
if (a==0)
if (b==0)
{printf("非法方程,请重新输入a,b,c“);
scanf("%d %d %d",&a,&b,&c);d=a, e=b, f=c;}
else
if (b*b-4*a*c==0)
printf("x1=x2=%.6f\n",0-e/(2*d));
else
if (b*b-4*a*c>0)
printf("x1=%.6f\nx2=%.6f\n",(-e+sqrt(e*e-4*d*f))/(2*d),(-e-sqrt(e*e-4*d*f))/(2*d));
else
{
【5】;
【6】
printf("x1=%.6f+%.6fi\nx2=%.6f+%.6fi\n",-e/(2*d),sqrt(4*d*f-e*e)/(2*d),-e/(2*d),-sqrt(4*d*f-e*e)/(2*d));
}
5,6没法填

⑷ c语言求一元二次方程的根

#include<iostream>

#include<cmath>

usingnamespacestd;

intmain()

{floata,b,c;floatx1,x2; cin>a>>b>>c;floatdlt=b*b-4*a*c;if(dlt>=0){x1=-b/2/a+sqrt(dlt)。

/2/ax2=-b/2/a-sqrt(dlt)/2/a。

cout<<a<<"x^2+"<<b<<"x+"<<c<<"=0有两个实根:";cout<<"x1="<<x1<<",x2="<<x2<<endl;}

else

{x1=-b/2/a;x2=sqrt(-dlt)/2/a;cout<<a<<"x^2+"<<b<<"x+"<<c<<"=0有两个虚根:"。

cout<<"x="<<x1<<"+/-"<<x2<<"i"<<endl;}

return0。

(4)c语言题目求一元二次方程的根扩展阅读:

成立条件:

一元二次方程成立必须同时满足三个条件:

①是整式方程,即等号两边都是整式,方程中如果有分母;且未知数在分母上,那么这个方程就是分式方程,不是一元二次方程,方程中如果有根号,且未知数在根号内,那么这个方程也不是一元二次方程(是无理方程)。

②只含有一个未知数;

③未知数项的最高次数是2。

⑸ C语言编程:求1元2次方程的根

#include <stdio.h>

#include <math.h>

int main()

{

double a,b,c; /*定义系数变量*/

double x1,x2,p; /*定义根变量和表达式的变量值*/

printf("请输入a,b,c:"); /*提示用户输入三个系数*/

scanf("%lf%lf%lf",&a,&b,&c); /*接收用户输入的系数*/

printf(" "); /*输出回行*/

p=b*b-4*a*c; /*给表达式赋值*/

x1=(-b+sqrt(p))/(2*a); /*根1的值*/

x2=(-b-sqrt(p))/(2*a); /*跟2的值*/

printf("x1=%f,x2=%f ",x1,x2); /*输出两个根的值*/

}

拓展资料

在实际的求法中,一般还需要判断有无实根,这是可以通过p的值来判断

⑹ 如何用C语言求一元二次方程的根

#include <stdlib.h>
#include <math.h>
void main( void )
{
double a,b,c,d;
printf("请输入一元二次方程的三个系数:");
scanf("%lf %lf %lf",&a,&b,&c);
d=b*b-4*a*c;
if(d<0){printf("方程没有实根。\n"); return 1;}
if(d==0){printf("方程有重根 x=%lf\n",-b/(2*a)); return 0;}
printf("方程有二个实根 x1=%lf x2=%lf",(-b+sqrt(d))/(2*a),(-b-sqrt(d))/(2*a));
system("pause");
return 0;
}