33,311
社区成员
发帖
与我相关
我的任务
分享
#include<stdio.h>
#include<math.h>
double fac(int n);
double sinx(double radian,int n);
int main(int argc, char* argv[])
{
double radian;
int n;
scanf("%lf %d",&radian,&n);
printf("%.8f\n",sinx(radian,n));
return 0;
}
double fac(int n)
{
double num=1;
for(int j=1;j<=n;j++)
num = num * j;
return num;
}
double sinx(double radian,int n)
{
double x=radian;
int i=2,k=0,j=1;
double temp,result=0.0;
do{
k=2*j-1;
temp=pow(-1,i)*pow(x,k)/fac(k);
result=result+temp;
i++;
j++;
}while(j<=n);
return result;
}