# c语言实现sin,cos,sqrt,pow函数

 1 float abs(float x)
2 {
3     if(x<0) x=0-x;
4     return x;
5 }
6
7
8 float sin(float x)
9
10 {
11
12  const float B = 1.2732395447;
13  const float C = -0.4052847346;
14  const float P = 0.2310792853;//0.225;
15  float y = B * x + C * x * abs(x);
16  y = P * (y * abs(y) - y) + y;
17  return y;
18  }
19
20
21 float cos(float x)
22 {
23   const float Q = 1.5707963268;
24   const float PI =3.1415926536;
25   x += Q;
26
27   if(x > PI)
28     x -= 2 * PI;
29
30  return( sin(x));
31 }
32
33
34 float sqrt(float a)
35  {
36    double x,y;
37    x=0.0;
38    y=a/2;
39    while(x!=y)
40    {
41      x=y;
42      y=(x+a/x)/2;
43    }
44    return x;
45  }
46
47
48 float pow(float a,int b)
49 {
50     float r=a;
51     if(b>0)
52     {
53       while(--b)
54          r*=a;
55
56     }
57     else if(b<0)
58     {
59         while(++b)     r*=a;
60          r=1.0/r;
61     }
62     else r=0;
63     return r;
64 }

posted @ 2013-02-02 21:13  sky1991  阅读(13095)  评论(1编辑  收藏  举报