#include stdio.h
創新互聯建站專注于中大型企業的網站制作、成都網站制作和網站改版、網站營銷服務,追求商業策劃與數據分析、創意藝術與技術開發的融合,累計客戶數千家,服務滿意度達97%。幫助廣大客戶順利對接上互聯網浪潮,準確優選出符合自己需要的互聯網運用,我們將一直專注成都品牌網站建設和互聯網程序開發,在前進的路上,與客戶一起成長!
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 (e0) {
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;
}
如果跟為復根且b等于0,那x1就成了-0.00。最后一個else內改為:
x1?=?-?b?/?(2?*?a);
x2?=?sqrt(-delt)?/?(2?*?a);
x2?=?(x2??0)???x2?:?-x2;
if(b!=0)
{
printf("%.2f+%.2fi\n",?x1,?x2);
printf("%.2f-%.2fi\n",?x1,?x2);
}
else
{
printf("0.00+%.2fi\n",x2);
printf("0.00-%.2fi\n",x2);
}
第一個錯誤:int a,b.c,D,E,F,x1,x2; b和c應該是逗號而不是點;
第二個錯誤:E=sqrt D;和E=sqrt -D;應該改為E=sqrt(D);和E=sqrt(-D);函數調用參數要放在()中.
第三個錯誤:x1=F+D/2a,x2=F-D/2a;兩句之間應該是分號;否則會被編譯器當作逗號表達式.
最后建議您加上#includemath.h;scanf每次只輸入一個變量;else后面加上{};代碼寫的規范一點,這樣有利于查錯
做關于二次函數的問題,首先考慮a的取值a0,開口向上;a0,開口向下。
頂點(
-b/2a,(4ac-b^2)/4a
)
該題在x=-1時,y有最小值-4,就說明了該二次函數的頂點(并且a是大于0的)
即-b/2a=-1,(4ac-b^2)/4a
=-4
——
a
x1^2+x2^2=10(兩根之和為-b/a,兩根之積為c/a)
x1^2+x2^2=(x1+x2)^2-2x1x2=(b/a)^2-2c/a=10——
b
根據
a
和
b
解出就行了
#includestdio.h
#includemath.h
void?zero(float?a,float?b);
void?left();
void?right(float?a,float?b,float?c);
void?main()
{
float?a,b,c,d;
printf("請輸入a,b,c的值:\n");
scanf("%f?%f?%f",a,b,c);
d=b*b-4*a*c;
if(d==0)zero(a,b);
if(d0)left();
if(d0)right(a,b,c);
}
void?zero(float?a,float?b)
{
printf("%f",-b/2*a);
}
void?left()
{
printf("no?roots!\n");
}
void?right(float?a,float?b,float?c)
{
float?x1,x2;
x1=(-b+sqrt(b*b-4*a*c))/(2*a);
x2=(-b-sqrt(b*b-4*a*c))/(2*a);
printf("%f?%f?\n",x1,x2);
}
解ax^2+bx+c = 0 的解。
移項,
ax^2+bx = -c
兩邊除a,然后再配方,
x^2+(b/a)x + (b / 2a)^2 = -c/a + (b / 2a)^2
[x + b/(2a)]^2 = [b^2 - 4ac]/(2a)^2
兩邊開平方根,解得
x = [-b±√(b2-4ac)]/(2a)
擴展資料:
基本定義
一般地,把形如
(a、b、c是常數)的函數叫做二次函數,其中a稱為二次項系數,b為一次項系數,c為常數項。x為自變量,y為因變量。等號右邊自變量的最高次數是2。
頂點坐標
交點式為
(僅限于與x軸有交點的拋物線),
與x軸的交點坐標是
和
。注意:“變量”不同于“未知數”,不能說“二次函數是指未知數的最高次數為二次的多項式函數”。“未知數”只是一個數(具體值未知,但是只取一個值),“變量”可在一定范圍內任意取值。在方程中適用“未知數”的概念(函數方程、微分方程中是未知函數,但不論是未知數還是未知函數,一般都表示一個數或函數——也會遇到特殊情況),但是函數中的字母表示的是變量,意義已經有所不同。從函數的定義也可看出二者的差別。
當前文章:c語言2次函數復數求根 c語言求二次方程的根 含復根
文章鏈接:http://www.2m8n56k.cn/article46/hpcphg.html
成都網站建設公司_創新互聯,為您提供ChatGPT、網站維護、搜索引擎優化、動態網站、網頁設計公司、手機網站建設
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:[email protected]。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯