#include<stdio.h>
#include<math.h>
#include<time.h>
#声明
clock_t start
,stop
;
double duration
;
double f1(double x
);
double f2(double x
);
int main()
{
start
= clock();
for(int i
= 0;i
<10000;i
++)#时间过短,加长好比较
f1(1.1);
stop
= clock();
printf("%f\n",f1(1.1));
duration
= double(stop
-start
)/10000;计算函数单次运行时间
printf(%f\n
,duration
);
return 0;
}
double f1(double x
)
{ double sum
= 1.0,y
= 1.0;
for(int i
= 0;i
<100;i
++)
{
y
=x
*y
;
sum
+=y
/i
;
}
return sum
;
}
double f2(double x
)
{ sum
= 1.0;
for(int i
= 0;i
<100;i
++)
sum
+= pow(x
,i
)/i
;
return sum
;
{
#算法三 f(x) = 1 + x(1 + x( 1/2 + x( 1/3 + x(1/4 + ……x(1/99+x(1/100)))))
double f3(double x
)
{ sum
= 1/100;
for(int i
= 100;i
>0;i
--)
sum
= sum
*x
+1/(i
-1)
return sum
;
}
抽象就像一个万能公式,它把模板写出来了,遇到具体而微的问题,你只管往里面套就可以了。