天天看點

6-3 遞歸實作指數函數(10 分)

本題要求實作一個計算x的n次方n≥1)的函數。

函數接口定義:double calc_pow( double x, int n );

函數calc_pow應傳回x的n次幂的值。建議用遞歸實作。題目保證結果在雙精度範圍内。

輸入樣例:

2 3

輸出樣例:

8

裁判測試程式樣例:

#include <stdio.h>
double calc_pow( double x, int n );
int main()
{
    double x;
    int n;
    scanf("%lf %d", &x, &n);
    printf("%.0f\n", calc_pow(x, n));
    return 0;
}
           
double calc_pow( double x, int n )
{
  if(n==1)
  return x;
  else if(n==0)
  return 1;
  else
  return x*calc_pow(x,n-1); 
}
           

繼續閱讀