我试图在c中写一个幂函数而不调用pow().
double power (double X, int Y)
{
int i;
double value = 1;
for (i = 0; i < Y; i++)
value *= X;
return value;
}
Run Code Online (Sandbox Code Playgroud)
我的问题是,是否有任何理由可以看出这个函数在任何给定的测试值下都无法正常工作?我试图涵盖所有输入的可能性.
-谢谢
这是我的代码:
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
static const int PI = 3.14159; // Defined global constant for PI
int areaR;
int circumferenceR;
int areaD;
int circumferenceD;
int main(void)
{
#define radius 6
#define diameter 12
areaR = PI * pow(radius, 2);
circumferenceR = 2 * PI * radius;
areaD = PI * pow(diameter, 2)) / 4;
circumferenceD = PI * diameter;
puts("Results given a circle of radius 6 and diameter 12:\n");
printf("areaR is %d\n", areaR);
printf("circumferenceR is %d\n", circumferenceR); …Run Code Online (Sandbox Code Playgroud)