1,for循環(huán)的條件錯(cuò)了,應(yīng)該是大于號(hào)。
站在用戶的角度思考問(wèn)題,與客戶深入溝通,找到肅寧網(wǎng)站設(shè)計(jì)與肅寧網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗(yàn),讓設(shè)計(jì)與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個(gè)性化、用戶體驗(yàn)好的作品,建站類(lèi)型包括:成都網(wǎng)站制作、網(wǎng)站建設(shè)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣、域名注冊(cè)、雅安服務(wù)器托管、企業(yè)郵箱。業(yè)務(wù)覆蓋肅寧地區(qū)。
2,math.h中的函數(shù)用的時(shí)候要慎重,這些都是用來(lái)做復(fù)雜的數(shù)學(xué)計(jì)算的,時(shí)間開(kāi)銷(xiāo)都很大。
3,求余只能對(duì)整數(shù)操作,這點(diǎn)是必然的。但浮點(diǎn)數(shù)是可以轉(zhuǎn)換成整數(shù)的,可以用強(qiáng)制類(lèi)型轉(zhuǎn)換,或者設(shè)一個(gè)整型的中間變量。注意浮點(diǎn)數(shù)轉(zhuǎn)整數(shù)的時(shí)候是舍入的。當(dāng)然,這里只是說(shuō)這個(gè)事,不建議這樣做。
建議的做法有兩個(gè),簡(jiǎn)單點(diǎn)延用原有的思路,可以自己寫(xiě)一個(gè)求10的k次方的函數(shù),用整數(shù)進(jìn)行運(yùn)算。
int pow10n( int k )
{
r = 1;
for(i=0; i k ; ++i)
r *= 10;
return r;
}
復(fù)雜點(diǎn)的做法是把求10的k次方這個(gè)運(yùn)算和拆分n的循環(huán)嵌在一起,這個(gè)應(yīng)該是正統(tǒng)的做法。
for( k=0; k3; ++k )
{
n %= 10;
}
當(dāng)然,這個(gè)算法得到的結(jié)果是逆序的,4、3、2、1
這有兩個(gè)辦法,一個(gè)是把結(jié)果順序放到數(shù)組中,輸出的時(shí)候把順序倒過(guò)來(lái),說(shuō)白了是用中間變量。
另外一個(gè)辦法是用棧,或者用遞歸(本質(zhì)上也是用的棧),直接按逆序出結(jié)果。當(dāng)然,這個(gè)方法對(duì)初學(xué)者有點(diǎn)難度了。
extern float pow(float x, float y)
用法:#include math.h
功能:計(jì)算x的y次冪。
說(shuō)明:x應(yīng)大于零,返回冪指數(shù)的結(jié)果。
舉例:
// pow.c
#include stdlib.h
#include math.h
#include conio.h
void main()
{
printf("4^5=%f",pow(4.,5.));
getchar();
}
相關(guān)函數(shù):pow10
C語(yǔ)言是一門(mén)通用計(jì)算機(jī)編程語(yǔ)言,應(yīng)用廣泛。C語(yǔ)言的設(shè)計(jì)目標(biāo)是提供一種能以簡(jiǎn)易的方式編譯、處理低級(jí)存儲(chǔ)器、產(chǎn)生少量的機(jī)器碼以及不需要任何運(yùn)行環(huán)境支持便能運(yùn)行的編程語(yǔ)言。
可以用在math.h頭文件中聲明的pow()函數(shù)求,例如:
要求a的b次方,就用pow(a,b)即可。
^符號(hào)在C中是位異或操作符,不用于求乘方。