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

C語言中pow函數(shù)使用方法、注意事項以及常見報錯原因

 更新時間:2022年11月23日 10:19:54   作者:東區(qū)東區(qū)!  
在c語言當中我們要計算一個數(shù)的n次方時候,可以使用多種方法,但是也有一種比較簡單的方法,便是調(diào)用一個函數(shù)pow函數(shù),下面這篇文章主要給大家介紹了關(guān)于C語言中pow函數(shù)使用方法、注意事項以及常見報錯原因的相關(guān)資料,需要的朋友可以參考下

1.首先使用pow函數(shù)必須要加頭文件 :

#include<math.h>

pow() 函數(shù)用來求 x 的 y 次冪(次方),x、y及函數(shù)值實際上為double型 ,其在使用中的原型為:double pow(double x, double y); 

注意,在某些特定的情況之下,pow函數(shù)的double類型可能會引起輸出結(jié)果的錯誤

2.pow()用來計算以x 為底的 y 次方值,然后將結(jié)果返回。

設(shè)返回值為 ret 則 ret = x^y

基本使用方法如下:

#include<stdio.h>
#include<math.h>
int main()
{
    int a,b,ret;
    scanf("%d,%d", &a, &b);
    ret = pow(a,b);    //求出a的b次方
    printf("%d", ret);
    return 0;
}

3.注意可能引起報錯的原因

  • 底數(shù) a為負數(shù)并且指數(shù) b 不是整數(shù),將會導(dǎo)致 domain error 錯誤.
  • 底數(shù) a和指數(shù) b都是 0,會導(dǎo)致 domain error 錯誤.
  • 底數(shù) a是 0,指數(shù) b 為負數(shù),會導(dǎo)致 domain error 或 pole error 錯誤.

所以在使用pow函數(shù)時,要注意底數(shù)和指數(shù)數(shù)字的正負,不要違反基本的數(shù)學常識 4.代碼實戰(zhàn) 輸入一個數(shù),想把每位的數(shù)變成0或1。如果某一位是奇數(shù),就把它變成1,如果是偶數(shù),那么就把它變成0。最后得到的數(shù)是多少?

例如:輸入888, 輸出結(jié)果為0

            輸入123,結(jié)果為101

#include<stdio.h>
#include<math.h>
int main()
{
    int a[i],  i, k;
    long long sum, n, c;
    scanf("%d", &n);
    while(n)
        {
            c = n % 10;
            n = n / 10;
            a[k++] = c;
        }
    for(i = 0; i < k; i++)
        {
            if(c % 2 == 0)
                {
                    a[i] = 0;
                }
            else
                {
                    a[i] = 1;
                }
        sum = sum + a[i] * pow(10, i);
        }
    printf("%d", sum);
    return 0;
}

可能導(dǎo)致錯誤的情況:

  • 如果底數(shù) x 為負數(shù)并且指數(shù) y 不是整數(shù),將會導(dǎo)致 domain error 錯誤。
  • 如果底數(shù) x 和指數(shù) y 都是 0,可能會導(dǎo)致 domain error 錯誤,也可能沒有;這跟庫的實現(xiàn)有關(guān)。
  • 如果底數(shù) x 是 0,指數(shù) y 是負數(shù),可能會導(dǎo)致 domain error 或 pole error 錯誤,也可能沒有;這跟庫的實現(xiàn)有關(guān)。
  • 如果返回值 z 太大或者太小,將會導(dǎo)致 range error 錯誤。

錯誤代碼:

如果發(fā)生 domain error 錯誤,那么全局變量 errno 將被設(shè)置為  EDOM;

如果發(fā)生 pole error 或 range error 錯誤,那么全局變量 errno 將被設(shè)置為 ERANGE。

Math.pow(底數(shù),幾次方)

如:double a=2.0;

    double b=3.0;

double c=Math.pow(a,b);

就是2的三次方是多少;

c最終為8.0;

總結(jié)

到此這篇關(guān)于C語言中pow函數(shù)使用方法、注意事項及常見報錯原因的文章就介紹到這了,更多相關(guān)C語言pow函數(shù)使用內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評論