标签:
#include <stdio.h> #include <time.h> #include <math.h> #define M 1000 double f2(int n,double a[], double x); double f1(int n, double a[], double x); int main(void) { double a[101]; double ans,duration; clock_t start,end; a[0] = 1; for (int i = 1; i<101; i++) a[i] = (double)1/i; start = clock(); for (int i = 0; i<M; i++) ans = f1(101, a, 1.1); end = clock(); duration = ((double)(end - start)/CLOCKS_PER_SEC); printf("time of f1 = %f\n",duration); printf("result:%f\n",ans); start = clock(); for (int i = 0; i<M; i++) ans = f2(101, a, 1.1); end = clock(); duration = ((double)(end - start)/CLOCKS_PER_SEC); printf("time of f2 = %f\n",duration); printf("result:%f\n",ans); return 0; } double f1(int n, double a[], double x) { double p = a[0]; for (int i = 1; i<=n; i++) { p += a[i]*pow(x,i); } return p; } double f2(int n, double a[], double x) { double p = a[n]; for (int i = n; i>0; i--) { p = x*p+a[i-1]; } return p; }
标签:
原文地址:http://www.cnblogs.com/sjdeak/p/4780254.html