欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

C語(yǔ)言之如何求三次方根

 更新時(shí)間:2022年12月05日 17:07:00   作者:又摘桃花賣(mài)酒錢(qián)  
這篇文章主要介紹了C語(yǔ)言之如何求三次方根問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

C語(yǔ)言求三次方根

前話

說(shuō)到C語(yǔ)言求根,我們一般會(huì)想到用sqrt(x)函數(shù),它的輸入值和返回值都是double型,x取整將會(huì)導(dǎo)致編譯器錯(cuò)誤。但是sqrt(x)只能求x的二次方根,求x的三次方根要用到pow(x,y)函數(shù)。

pow(x,y)聲明在"math.h"頭文件中,和sqrt(x)不同,pow(x,y)的x和y允許取整數(shù)值,也可以是double。

錯(cuò)誤示范

要求x的三次方根,就是求x的1/3次方,一開(kāi)始,我這樣寫(xiě):pow(x,1/3);看看代碼和運(yùn)行結(jié)果。

#include<stdio.h>
#include<math.h>
 
int main(){
	double a=27, b=1/3;
    printf("%lf", pow(a, b));
    return 0;
}

結(jié)果是1,也就是x的0次方,為什么會(huì)這樣?

這和計(jì)算機(jī)的運(yùn)算有關(guān),還記得老師講過(guò),整形和整形的運(yùn)算結(jié)果只能是整形,而C語(yǔ)言保留整形的方法不是四舍五入,而是九舍零留;也就是1/3=0.3333...=0

正確的打開(kāi)方式

要想保留1/3的小數(shù)部分,那得這么寫(xiě):pow(x, 1.0/3);看看運(yùn)行結(jié)果。

#include<stdio.h>
#include<math.h>
 
int main(){
	double a=27, b=1./3;      //給1加了個(gè)小數(shù)點(diǎn),會(huì)被認(rèn)成是浮點(diǎn)型數(shù)
    printf("%lf", pow(a, b));
    return 0;
}

計(jì)算成功! 

延伸

由此包括倒數(shù),負(fù)數(shù)次方也能夠計(jì)算了。

#include<stdio.h>
#include<math.h>
 
int main(){
	double a=27, b=-1./3;     //計(jì)算27的負(fù)三分之一次方,結(jié)果應(yīng)為三分之一
    printf("%lf", pow(a, b));
    return 0;
}

C語(yǔ)言中,開(kāi)3次方用什么?

  • question: 開(kāi)平方用 sqrt(), 開(kāi)三次方用什么?。?/li>
  • answer: 開(kāi)立方也就是求 1/3 次方, 所以可以用pow()函數(shù)

example:

#include <stdio.h>
#include <math.h>

int main()
{
? ? double a = pow(8, 1.0 / 3);
? ? printf("%f\n", a);

? ? return 0;
}

程序運(yùn)行結(jié)果:

a = 2.000000

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論