#includestdio.h
成都創(chuàng)新互聯(lián)公司長期為千余家客戶提供的網(wǎng)站建設(shè)服務(wù),團隊從業(yè)經(jīng)驗10年,關(guān)注不同地域、不同群體,并針對不同對象提供差異化的產(chǎn)品和服務(wù);打造開放共贏平臺,與合作伙伴共同營造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為高碑店企業(yè)提供專業(yè)的成都網(wǎng)站制作、成都網(wǎng)站設(shè)計,高碑店網(wǎng)站改版等技術(shù)服務(wù)。擁有十多年豐富建站經(jīng)驗和眾多成功案例,為您定制開發(fā)。
#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("輸入錯誤!\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;
}
#include?stdio.h
#include?math.h
int?main()
{
float?a=5,?b;
b=sqrt(a);
printf("a的平方根為:%f\n",b);
return?0;
}
在C語言中,可以使用庫函數(shù)sqrt來實現(xiàn)開根號計算。
頭文件:math.h;
聲明:double sqrt(double n);
功能:將參數(shù)n開平方后,得到算數(shù)平方根返回;
調(diào)用形式:sqrt(100);為計算100的平方根。
int GetRoot(float a, float b, float c ,double* root){
double delta, deltasqrt ;
delta = b* b - 4*a*c ;
if(delta0) return 0 ;
deltasqrt = sqrt(delta) ;
if (a!=0.0){
root[0] = (deltasqrt - b)/(2.0*a) ;
root[1] = ?(-deltasqrt - b)/(2.0*a) ;
}
if (root[0] == root[1]) return 1;
else return 2 ;
}
int main(void){
//計算方程的根
float ?a = 2.0,b =6.0,c=3.0 ;//a,b,c s是參數(shù)
double root[2] ;//root是得到的兩個根
int n = GetRoot(a,b,c,root) ;
if (n1){
printf("方程無根") ;
}else{
printf("方程的解為:%f,%f",root[0],root[1]) ;
}
}
擴展資料:
C語言是一門面向過程、抽象化的通用程序設(shè)計語言,廣泛應(yīng)用于底層開發(fā)。C語言能以簡易的方式編譯、處理低級存儲器。C語言是僅產(chǎn)生少量的機器語言以及不需要任何運行環(huán)境支持便能運行的高效率程序設(shè)計語言。盡管C語言提供了許多低級處理的功能,但仍然保持著跨平臺的特性,以一個標準規(guī)格寫出的C語言程序可在包括一些類似嵌入式處理器以及超級計算機等作業(yè)平臺的許多計算機平臺上進行編譯。
C語言特點:
(1)簡潔的語言
C語言包含有各種控制語句僅有9種,關(guān)鍵字也只有32
個,程序的編寫要求不嚴格且多以小寫字母為主,對許多不必要的部分進行了精簡。實際上,語句構(gòu)成與硬件有關(guān)聯(lián)的較少,且C語言本身不提供與硬件相關(guān)的輸入輸出、文件管理等功能,如需此類功能,需要通過配合編譯系統(tǒng)所支持的各類庫進行編程,故c語言擁有非常簡潔的編譯系統(tǒng)。
(2)具有結(jié)構(gòu)化的控制語句
C語言是一種結(jié)構(gòu)化的語言,提供的控制語句具有結(jié)構(gòu)化特征,如for語句、if?else語句和switch語句等??梢杂糜趯崿F(xiàn)函數(shù)的邏輯控制,方便面向過程的程序設(shè)計。
(3)豐富的數(shù)據(jù)類型
C語言包含的數(shù)據(jù)類型廣泛,不僅包含有傳統(tǒng)的字符型、整型、浮點型、數(shù)組類型等數(shù)據(jù)類型,還具有其他編程語言所不具備的數(shù)據(jù)類型,其中以指針類型數(shù)據(jù)使用最為靈活,可以通過編程對各種數(shù)據(jù)結(jié)構(gòu)進行計算。
(4)豐富的運算符
C語言包含34個運算符,它將賦值、括號等均視作運算符來操作,使C程序的表達式類型和運算符類型均非常豐富。
(5)可對物理地址進行直接操作
C語言允許對硬件內(nèi)存地址進行直接讀寫,以此可以實現(xiàn)匯編語言的主要功能,并可直接操作硬件。C語言不但具備高級語言所具有的良好特性,又包含了許多低級語言的優(yōu)勢,故在系統(tǒng)軟件編程領(lǐng)域有著廣泛的應(yīng)用。
(6)代碼具有較好的可移植性
C語言是面向過程的編程語言,用戶只需要關(guān)注所被解決問題的本身,而不需要花費過多的精力去了解相關(guān)硬件,且針對不同的硬件環(huán)境,在用C語言實現(xiàn)相同功能時的代碼基本一致,不需或僅需進行少量改動便可完成移植,這就意味著,對于一臺計算機編寫的C程序可以在另一臺計算機上輕松地運行,從而極大地減少了程序移植的工作強度
(7)可生成的高質(zhì)量目標代碼,高執(zhí)行效率的程序
與其他高級語言相比,C語言可以生成高質(zhì)量和高效率的目標代碼,故通常應(yīng)用于對代碼質(zhì)量和執(zhí)行效率要求較高的嵌入式系統(tǒng)程序的編寫。