输入一个正数x和一个正整数n,求下列算式的值。要求顶一个调用2个函数:

2024-11-07 23:33:17
推荐回答(2个)
回答(1):

#include
#include

int main(void)
{ double fact(int a);
double mypow(double x,int a);
float x,z=0;
int i,n;
scanf("%f%d",&x,&n);
for(i=1;i<=n;i++)
{
z=z+(mypow(-1,i+1))*(mypow(x,i)/(fact(i)));
}
printf("%.4f",z);

return 0;
}

double fact(int a)
{
int i;
double b;
b=1;
for(i=1;i<=a;i++)
b=b*i;
return (b);
}

double mypow(double x,int a)
{
int i;
double b=1;
for(i=0;ib=b*x;
return (b);
}

回答(2):

是c语言吗 你问错地方了。
c忘得有点多具体写不出来,我只大致写一下思路,

fact(n)的
int b=1; 用b来装阶乘
for(;n>0;n--)
b=n*b;

mypow(x,n)的

int c=1;用c来装n次幂
for(;n>0;n--)
c=c*x;

然后main里面是
int d=0,a;d用来装多项式,a用来装前面的正负号,a的赋值我就不写了
for(;n>0;n--)
d=d+a*mypow(x,n)/fact(n);

基本就是这样,不懂再问