C语言编程 求一元二次方程的根 !!!

C语言编程 求一元二次方程的根 !!!c语言 求一元二次方程的根,可以为复根 。求大神帮助
本题目要求一元二次方程 a*x2+b*x+c=0 的根,结果保留2位小数。输入格式:输入在一行中给出3个浮点系数a, b, c,中间用空格分开。输出格式:根据系数情况,输出不同结果:1)如果方程有两个不相等的实数根,则每行输出一个根,先大后小;
2)如果方程有两个不相等复数根,则每行按照格式“实部+虚部i”输出一个根,先输出虚部为正的,后输出虚部为负的;
3)如果方程只有一个根,则直接输出此根;
4)如果系数都为0,则输出"Zero Equation";
5)如果a和b为0,c不为0,则输出"Not An Equation"。

#include <iostream> 

#include <cmath>

using namespace std; 

int main()

{float a,b,c;float x1,x2; cin>a>>b>>c;float dlt=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;}

return 0。

扩展资料:

成立条件:

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

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

②只含有一个未知数;

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

参考资料来源:百度百科-c语言





温馨提示:内容为网友见解,仅供参考
第1个回答  2017-11-03
#include <stdio.h>
#include <math.h>
void main()
{
float a,b,c,dlt;
scanf("%f%f%f",&a,&b,&c);
if(a)
{
dlt=b*b-a*c*4;
if(dlt>0)
printf("x1=%.2f\nx2=%.2f",(-b+sqrt(dlt))/(a*2),(-b-sqrt(dlt))/(a*2));
else if(dlt<0)
printf("x1=%.2f+%.2fi\nx2=%.2f-%.2fi",-b/(a*2),abs(sqrt(-dlt)/(a*2)),-b/(a*2),abs(sqrt(-dlt)/(a*2)));
else printf("x=%.2f",-b/(a*2));
}
else
{
if(b) c?printf("x=%.2f",-c/b):printf("x=%.2f",abs(-c/b));
else c?printf("Not An Equation"):printf("Zero Equation");
}
}

追问

问号那里是什么呀

谢谢您 学渣心累

本回答被提问者和网友采纳
相似回答