首先你已經(jīng)很清楚的說明了你這個(gè)程序是用C語言寫二次函數(shù)的,而當(dāng)a=0時(shí),就不是二次函數(shù)了,應(yīng)該按照一次函數(shù)來進(jìn)行計(jì)算,否則 一個(gè)數(shù)除以0就沒有意義了.~
創(chuàng)新互聯(lián)公司自2013年創(chuàng)立以來,先為安居等服務(wù)建站,安居等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢服務(wù)。為安居企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問題。
#include stdio.h
#include stdlib.h
#include math.h
int main()
{
float a,b,c;
float x1,x2,m;
printf("input number a=:");
scanf("%f",a);
printf("input number b=:");
scanf("%f",b);
printf("input number c=:");
scanf("%f",c);
if(a==0)
printf("一根:%f\n",c*(-1)/b);
else if(a==0b==0)
printf("無意義!");
else
{
m=b*b-4*a*c;
if(m0)
{
printf("兩根\n");
printf("x1=%f\n",(-b+sqrt(m))/(2*a));
printf("x2=%f\n",(-b-sqrt(m))/(2*a));
}
else if(m==0)
printf("x1=x2=%f\n",x1);
}
else
printf("無實(shí)根\n");
}
return 0;
}
這個(gè)簡(jiǎn)單啊
#includestdio.h
#includemath.h
main()
{
double a,b,c,w;
printf("請(qǐng)輸入三個(gè)數(shù)(方程的系數(shù)),中間用空格分開\n");
scanf("%lf%lf%lf",a,b,c);
w=b*b-4*a*c;
if (w0)printf("方程無解\n");
else if(w==0)printf("方程有一個(gè)解:x=%lf\n",-b/(2*a));
else printf("方程有兩個(gè)解:x1=%lf,x2=%lf\n",(-b+sqrt(w))/(2*a),(-b-sqrt(w))/(2*a));
}
#include stdio.h
int main(void)
{
double a,b,c,d,e;
double x1,x2;
printf("請(qǐng)輸入ax^2+bx +c = 0中a,b,c的值");
scanf("%lf,%lf,%lf",a,b,c);
e = b * b - 4 * a * c;
if (e0) {
printf("無解,請(qǐng)重新輸入\n");
scanf("%lf,%lf,%lf",a,b,c);
}
printf("輸入正確,正在計(jì)算....\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;
}
#include stdio.h
#include stdlib.h
#include math.h
int main()
{
float a,b,c;
float x1,x2,m;
printf("input number a=:");
scanf("%f",a);
printf("input number b=:");
scanf("%f",b);
printf("input number c=:");
scanf("%f",c);
m=b*b-4*a*c;
if(m=0a!=0){
if(m0){
x1=(-b+sqrt(m))/(2*a);
x2=(-b-sqrt(m))/(2*a);
printf("兩根\n");
printf("x1=%f\n",x1);
printf("x2=%f\n",x2);}
else
printf("一根\n");
printf("x1=x2=%f\n",x1);}
else
{
if(a=0 b!=0) printf("根是x=-c/b");
if(a=0b=0) printf("為常函數(shù)");
if(a!=0) printf("無根\n");
}
system("PAUSE");
return 0; }
你的輸入語句為:
scanf("%f,%f,%f",a,b,c);
運(yùn)行后輸入的數(shù)據(jù)是否使用了兩個(gè)逗號(hào)分割,否則a,b,c的值并不是你輸入的內(nèi)容,你可以輸出來看一看。
建議輸入語句不要逗號(hào),例如這樣:
scanf("%f%f%f",a,b,c);
這樣輸入的數(shù)據(jù)使用逗號(hào)或者回車分開都可以。
#include?stdio.h
#include?math.h
void?main()
{????
float?a,b,c,x1,x2,p,q,disc;????
printf("input?a,b,c\n");????
scanf("a=%f,b=%f,c=%f",a,b,c);????
disc=b*b-4*a*c;
if?(disc0)
{
printf("沒根\n");
}
else
{
p=-b/(2*a);????
q=sqrt(disc)/(2*a);????
x1=p+q;????
x2=p-q;????
printf("\nx1=%5.2f\nx2=%5.2f\n",x1,x2);
}
}
你輸入的那個(gè)方程根本就沒有根,這個(gè)你需要加一個(gè)判斷條件,這樣才能正確處理求根公式
本文標(biāo)題:c語言計(jì)算二次函數(shù)兩根,c語言計(jì)算二次方程的根
鏈接地址:http://www.rwnh.cn/article26/dssdscg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供全網(wǎng)營銷推廣、網(wǎng)站導(dǎo)航、域名注冊(cè)、搜索引擎優(yōu)化、外貿(mào)網(wǎng)站建設(shè)、App開發(fā)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)