十年網(wǎng)站開發(fā)經(jīng)驗(yàn) + 多家企業(yè)客戶 + 靠譜的建站團(tuán)隊(duì)
量身定制 + 運(yùn)營(yíng)維護(hù)+專業(yè)推廣+無(wú)憂售后,網(wǎng)站問(wèn)題一站解決
變量平方有如下三種常用的輸入方法:
創(chuàng)新互聯(lián)主要從事網(wǎng)站設(shè)計(jì)制作、成都網(wǎng)站制作、網(wǎng)頁(yè)設(shè)計(jì)、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)懷來(lái),10多年網(wǎng)站建設(shè)經(jīng)驗(yàn),價(jià)格優(yōu)惠、服務(wù)專業(yè),歡迎來(lái)電咨詢建站服務(wù):18980820575
1 直接輸入法。
這種方法是利用平方的數(shù)學(xué)定義,直接輸入兩個(gè)相同變量的乘法形式。
比如
int a = 10;
int a2;
a2 = a*a;
這里a2的值就是a的平方。
這種方法的好處是簡(jiǎn)單明了,而且適用于各種類型。
缺點(diǎn)是如果輸入高次方而不是平方,比如輸入10次方,就需要連續(xù)打10個(gè)a相乘,既不易輸入,也不容易閱讀,還容易出錯(cuò)。
2 利用庫(kù)函數(shù)法。
在math.h中有一個(gè)庫(kù)函數(shù)pow,其原型為
double pow(double a, double b);
功能是計(jì)算a的b次冪,并返回該結(jié)果。
比如這個(gè)代碼:
#include?math.h
#include?stdio.h
int?main()
{
double?a?=?1.23;
printf("qrt(a)?=?%lf\n",?pow(a,2));//計(jì)算a的平方并輸出
return?0;
}
該方法好處是簡(jiǎn)單易懂,對(duì)于高次冪計(jì)算同樣輸入簡(jiǎn)單,易于編寫,閱讀和維護(hù)。
缺點(diǎn)是只適用于浮點(diǎn)數(shù),如果用于整型,會(huì)在運(yùn)算中做默認(rèn)的類型轉(zhuǎn)換,由于精度問(wèn)題,結(jié)果可能會(huì)有偏差,適用于精度要求不是太高的情況
3 使用自定義函數(shù)。
自己定義求冪函數(shù)。該方法可以用于整型求高次冪,當(dāng)然也可以用于求平方。
從原理上來(lái)說(shuō),如果修改類型用于做浮點(diǎn)數(shù)冪運(yùn)算也是可以的,不過(guò)既然有庫(kù)函數(shù)pow那就沒(méi)必要用自定義函數(shù)了。
參考函數(shù)如下
int?qrt(int?a,?int?b)//求a的b次冪并返回
{
int?i,r=1;
for(i?=?0;?i??b;?i?++)
r?*=?a;//依次乘b次,即乘方的數(shù)學(xué)定義
return?r;
}
函數(shù)類型及返回值根據(jù)計(jì)算需要的數(shù)據(jù)規(guī)模隨時(shí)修改,可以為任意整型類型。
這樣在計(jì)算乘方時(shí)可以調(diào)用該函數(shù),調(diào)用方法和之前介紹的pow函數(shù)類似。
該種方法的缺點(diǎn)為需要自己寫函數(shù),代碼量比前兩種都要大。
以上三種方法各有優(yōu)劣,根據(jù)實(shí)際需要可以自行選擇。如果只是計(jì)算平方,那么推薦使用第一種方法。
math.h文件中含有乘方(包括開方)的庫(kù)函數(shù)
表示為:pow(x,y)
其中x和y都是雙精度浮點(diǎn)(double)型,x是底數(shù),y是指數(shù)(如果是小數(shù)即為開方)
表示為:double pow(double x, double y);
拓展資料
C語(yǔ)言pow()函數(shù):求x的y次方(次冪)
頭文件:
pow() 函數(shù)用來(lái)求 x 的 y 次冪(次方),其原型為:
pow()用來(lái)計(jì)算以x 為底的 y 次方值,然后將結(jié)果返回。設(shè)返回值為 ret,則 ret = xy。
實(shí)例:
輸出結(jié)果:
C語(yǔ)言sqrt()函數(shù):求給定值的平方根
頭文件:
sqrt() 用來(lái)求給定值的平方根,其原型為:
實(shí)例計(jì)算200 的平方根值。
輸出結(jié)果:
a的平方表示為a*a,平方還可以用pow(a,2)。a開方表示為sqrt(a)。
函數(shù)原型:
在VC6.0中的math.h頭文件的函數(shù)原型為double
sqrt(double);
說(shuō)明:sqrt系Square
Root
Calculations(平方根計(jì)算),通過(guò)這種運(yùn)算可以考驗(yàn)CPU的浮點(diǎn)能力。
頭文件:math
此函數(shù)輸出的是double類型,%lf的數(shù)據(jù)。