1. c語言如何計算求解一元二次方程ax+bx+c=0的根
#include<stdio.h>
#include<math.h>
int fun1(double a,double b,double d)
{ double x1,x2;
x1=(b+sqrt(d))/(-1*2*a);
x2=(b-sqrt(d))/(-1*2*a);
printf("x1=%.2lf x2%.2lf",x1,x2);
}
int fun2(double a,double b,double d)
{double x1,x2;
x1=x2=(b+sqrt(d))/(-2*a);
printf("x1=%.2lf x2=%.2lf",x1,x2);
}
int fun3(double a,double b,double d)
{double x1,x2,y1,y2;
x1=(-b)/(2*a);
y1=sqrt(-d)/(2*a);
x2=(-b)/(2*a);
y2=sqrt(-d)/(2*a);
printf("x1=%.3lf+%.3lfi x2=%.3lf-%.3lfi",x1,y1,x2,y2);
}
int main()
{
double a,b,c,d;
double x1,x2;
scanf("%lf%lf%lf",&a,&b,&c);
d=b*b-4*a*c;//b*b-4*a*c有3中情況,因此定義3個函數來計算3種情況;
if(d>0)
fun1(a,b,d);
if(d==0)
fun2(a,b,d);
if(d<0)//這種情況結果為復數;
fun3(a,b,d);
return 0;
}
2. c語言求二次函數的根
#include <stdio.h>
int main(void)
{
double a,b,c,d,e;
double x1,x2;
printf("請輸入ax^2+bx +c = 0中a,b,c的值");
scanf("%lf,%lf,%lf",&a,&b,&c);
e = b * b - 4 * a * c;
if (e<0) {
printf("無解,請重新輸入\n");
scanf("%lf,%lf,%lf",&a,&b,&c);
}
printf("輸入正確,正在計算....\n");
d = sqrt(e);
x1 = (-b + d)/(2 * a);
x2 = (-b - d)/(2 * a);
printf("x1=%f\n",x1);
printf("x2=%f\n",x2);
return 0;
}
3. 求根公式的c語言表達式是什麼
求根公式的c語言程序如下:
#include<stdio.h>
#include<math.h>
int main()
{
float x1,x2,,a,b,c
float deta;
scanf("%f,%f,%f",&a,&b,&c);
deta=b*b-4*a*c;
if(deta<0)
{
printf("方程無解");
}
else
{
x1=(-b+sqrt(deta))/(2*a);
x2=(-b-sqrt(deta))/(2*a);
printf("x1=%f,x2=%f",x1,c2);
}
return 0;
}
4. 用C語言求二元一次方程的根
# include <stdio.h>
# include <math.h>
int main(void)
{
double a, b, c;
double delta;
double x1, x2;
char ch;
do
{
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)
{
x1 = (-b + sqrt(delta)) / (2*a);
x2 = (-b - sqrt(delta)) / (2*a);
printf("有兩個解,x1 = %lf, x2 = %lf\n", x1, x2);
}
else if (0 == delta)
{
x1 = x2 = (-b) / (2*a);
printf("有唯一解,x1 = x2 = %lf\n", x1, x2);
}
else
{
printf("無實數解!\n");
}
printf("您想繼續么(Y/N): ");
scanf(" %c", &ch); //%c前面必須得加一個空格 原因略
} while ('y'==ch || 'Y'==ch);
return 0;
}
希望可以幫到你,如果滿意請採納!
5. 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。
(5)c語言怎麼求根擴展閱讀:
成立條件:
一元二次方程成立必須同時滿足三個條件:
①是整式方程,即等號兩邊都是整式,方程中如果有分母;且未知數在分母上,那麼這個方程就是分式方程,不是一元二次方程,方程中如果有根號,且未知數在根號內,那麼這個方程也不是一元二次方程(是無理方程)。
②只含有一個未知數;
③未知數項的最高次數是2。
6. c語言里 一元二次方程求根公式怎麼寫
b^2 是按位異或,不是乘法計算,C語言中沒有平方的符號的,把b^2改成b*b就行了
7. 如何用c程序求一元二次方程的根
只含有一個未知數(一元),並且未知數項的最高次數是2(二次)的整式方程叫做一元二次方程。標准形式為:ax²+bx+c=0(a≠0)。
一、開平方法。
形如x²=p 或(nx+m)²=p(p≥0)的一元二次方程可採用開平方法解一元二次方程。
二、配方法。
將一元二次方程配成(x+m)²=n的形式,再利用直接開平方法求解的方法。
用配方法解一元二次方程的步驟:
①把原方程化為一般形式;
②方程兩邊同除以二次項系數,使二次項系數為1,並把常數項移到方程右邊;
③方程兩邊同時加上一次項系數一半的平方;
④把左邊配成一個完全平方式,右邊化為一個常數;
⑤進一步通過直接開平方法求出方程的解,如果右邊是非負數,則方程有兩個實數根。
用求根公式法解一元二次方程的一般步驟為:
①把方程化成一般形式 ,確定a,b,c的值(注意符號);
②求出判別式的值,判斷根的情況;
③在Δ≥0的前提下,把a、b、c的值代入公式。
希望我能幫助你解疑釋惑。