新聞中心
C語言編程題調(diào)用函數(shù)求解方程組,a1x+b1y=c1,a2x+b2y=c2
#includestdio.h
為萬柏林等地區(qū)用戶提供了全套網(wǎng)頁設(shè)計(jì)制作服務(wù),及萬柏林網(wǎng)站建設(shè)行業(yè)解決方案。主營(yíng)業(yè)務(wù)為網(wǎng)站建設(shè)、網(wǎng)站制作、萬柏林網(wǎng)站設(shè)計(jì),以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠的服務(wù)。我們深信只要達(dá)到每一位用戶的要求,就會(huì)得到認(rèn)可,從而選擇與我們長(zhǎng)期合作。這樣,我們也可以走得更遠(yuǎn)!
double
val(double
a00,double
a11,double
a01,double
a10)
{
return
a00*a11-a01*a10;
}
void
main()
{
double
a1,b1,c1,a2,b2,c2;
double
m1,m2,m3;
printf("Please
input
a1,b1,c1\n");
scanf("%lf%lf%lf",a1,b1,c1);
printf("Please
input
a2,b2,c2\n");
scanf("%lf%lf%lf",a2,b2,c2);
m1
=
val(a1,b2,a2,b1);
m2
=
val(c1,b2,c2,b1);
m3
=
val(c1,a2,c2,a1);
if(m1==0){
if(m2==0
m3==0)
printf("無數(shù)解\n");
else
printf("無解\n");
}else
printf("x=%lf,y=%lf\n",m2/m1,-m3/m1);
}
這個(gè)是先求行列式的值,然后判斷其是否為0,討論解的情況,當(dāng)有唯一解的時(shí)候,輸出x和y的值。
val()函數(shù)用于計(jì)算2x2行列式的值。
有不明白的地方可以追問,望采納:)
如何用C語言程序解方程?
#include?"stdio.h"?
#include?"math.h"?
/*求一元二次方程ax*x+bx+c=0的解*/?
main()?
{?
float?a,b,c,x1,x2,d;?
printf("請(qǐng)輸入a:");?
scanf("%f",a);?
printf("請(qǐng)輸入b:");?
scanf("%f",b);?
printf("請(qǐng)輸入c:");?
scanf("%f",c);?
d=b*b-4*a*c;?
if(d??0)?
printf("方程沒有實(shí)數(shù)解。\n");?
if?(d==0)?
{?
x1=(-b)/(2*a);?
printf("x1=%f\n",x1);?
}?
if?(d0)?
{?
x1=(-b+sqrt(d))/(2*a);?
x2=(-b-sqrt(d))/(2*a);?
printf("x1=%f,x2=%f\n",x1,x2);}?
}
請(qǐng)輸入a:12
請(qǐng)輸入b:34
請(qǐng)輸入c:4
x1=-0.122985,x2=-2.710348
Press?any?key?to?continue
c語言函數(shù)求方程的根
#includestdio.h
#includestdlib.h
#includemath.h
int main()
{
float a,b,c,x,x1,x2,d;
scanf("%f %f %f",a,b,c);
d=b*b-4*a*c;
if(a==0)
{
if(b==0)
{
if(0==c)
{
printf("等式0!\n");
}
else
{
printf("輸入錯(cuò)誤!\n");
}
}
else
{
printf("只能構(gòu)成一元一次方程,x=%.6f\n",0==-(float)c/b ? 0 : -(float)c/b);
}
}
else
{
if(d0)
{
x1=(-b+sqrt(-d))/(2.0*a);
x2=(-b-sqrt(-d))/(2.0*a);
printf("x1=%.6f+%.6fi\nx2=%.6f-%.6fi\n",(-b)/(2.0*a),sqrt(-d)/(2.0*a),(-b)/(2.0*a),sqrt(-d)/(2.0*a));
}
else if(d==0)
{
printf("x1=x2=%.6f\n",(-b)/(2.0*a));
}
else
{
x1=(-b+sqrt(d))/(2.0*a);
x2=(-b-sqrt(d))/(2.0*a);
printf("x1=%.6f\nx2=%.6f\n",x1,x2);
}
}
system("PAUSE");
return EXIT_SUCCESS;
}
當(dāng)前名稱:c語言函數(shù)求解方程 怎么用c語言求解方程
網(wǎng)站路徑:http://ef60e0e.cn/article/dojigjc.html