C 言語でべき乗演算を実装するにはさまざまな方法がありますが、その中で最もよく使用される 2 つの方法は、ループ メソッドと再帰的メソッドです。以下にそれぞれを紹介し、具体的なコード例を示します。
loop メソッドは比較的シンプルで直感的な実装メソッドであり、ループを通じて基数が継続的に乗算され、より多くの回数を達成できる の威力。具体的なコードは次のとおりです。
#include <stdio.h> double power(double x, int n) { double result = 1.0; int i; if (n >= 0) { for (i = 0; i < n; i++) { result *= x; } } else { n = -n; for (i = 0; i < n; i++) { result /= x; } } return result; } int main() { double x; int n; printf("请输入底数:"); scanf("%lf", &x); printf("请输入指数:"); scanf("%d", &n); printf("%lf 的 %d 次方等于 %lf ", x, n, power(x, n)); return 0; }
上記のコードでは、power
関数は 2 つのパラメータ、つまり基数 x
と指数 n## を受け入れます。 # は、
x の
n べき乗演算の結果を返します。このうち、
n が 0 以上の場合は、#xx
自体をループで n
回乗算し、n
が 0 以上の場合は、#xx をループで
n 回乗算します。 0 よりも
n の絶対値を取得し、##x
を単独で ##n 回除算することをループします。
#include <stdio.h> double power(double x, int n) { if (n == 0) { return 1.0; } else if (n > 0) { return x * power(x, n - 1); } else { return 1.0 / power(x, -n); } } int main() { double x; int n; printf("请输入底数:"); scanf("%lf", &x); printf("请输入指数:"); scanf("%d", &n); printf("%lf 的 %d 次方等于 %lf ", x, n, power(x, n)); return 0; }上記のコードでは、
power 関数は、基数
x と指数
n という 2 つのパラメーターも受け入れます。 、
x の
n べき乗演算の結果を返します。このうち
n が 0 の場合は 1 を返し、
n が 0 より大きい場合は
#x を
n 乗して返します。 -1 が返されます。結果:
n が 0 未満の場合、1 を
x の
-n 乗で割った結果は次のようになります。戻ってきた。
以上がC言語でべき乗を計算する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。