⑴ 用sinx的泰勒展开式编写C语言程序
#include<stdio.h>
#include<math.h>
/*计算n的阶乘*/
intfactor(intn)
{
if(n==1)
return1;
else
returnfactor(n-1)*n;
}
/*得到分子的值*/
doubleget_numerator(doublex,intorder)
{
returnpow(x,order);//求x^order
}
/*得到分母的值*/
doubleget_denominator(intn)
{
returnfactor(n);//求n的阶乘
}
/*获得第n项的符号,即(-1)^n*/
intget_symbol(intn)
{
if(n%2==0)//n是偶数
return1;
else
return-1;
}
intmain()
{
inti;
doublex;
doublesin_x=0;
doubletmp=0;
printf("pleaseinputthex: ");
scanf("%lf",&x);
for(i=0;;i++)
{
tmp=sin_x;//暂时保存上一步得到的sin值
sin_x+=get_numerator(x,2*i+1)/get_denominator(2*i+1)*get_symbol(i);
if(fabs(sin_x-tmp)<1E-6)//精度满足要求
break;
}
printf("sin(%lf)=%lf ",x,sin_x);
return0;
}
/***********************************************************************
学好C语言,首先应该把语言的语法学好,这也是基础。尤其是注意指针部分,可以说这是C语言的精髓,也是C语言能够直接操作内存的犀利之处。
其次,应该多练代码,并且注意代码的可读性,规范性。
最好,能够亲身用C语言参加某个项目实践,毕竟实践出真知。
至于之后C++或者Java的学习,要看自己的发展规划了。不过学好C语言,绝对对你今后学习其他语言有很大帮助。
*************************************************************************/