关于函数的传递与返回,感觉比较比较好 的错题
就是求e^x=1+x/1!+x*x/2!+x*x*x/3!+......+x^n/n!传入x,n 但2,2或者2,3行5,6就不可以 了帮个忙吧各位。
#include<stdio.h>
#include<math.h>
int funm(int x,int n);
int funj(int n);
main()
{
int x,n;
int i;
long double a=1.0;
printf("shu ru");
scanf("%d%d",&x,&n);
for(i=1;i<=n;i++)
{
a+=(long double)funm(x,i)/funj(i);
}
printf("e^x=%lf",a);
}
int funm(int x,int n)
{
int i;
for(i=1;i<n;i++)
{
x*=x;
}
return x;
}
int funj(int n)
{
int j,s=1;
for(j=1;j<=n;j++)
s*=j;
return s;
}
#include <stdio.h>
#include <math.h>
double my_exp(double x, unsigned n)
{
int i;
double d = 1.0, f = 1.0, r = 1.0;
for (i = 1; i <= n; ++i) {
d *= x;
f *= i;
r += d / f;
}
return r;
}
int main(int argc, char *argv[])
{
int i;
double r;
double x = 1.0;
r = exp(x);
printf(" exp(%f )=%.16f\n", x, r);
for (i = 1; i < 20; ++i) {
r = my_exp(x, i);
printf("my_exp(%f, %02d)=%.16f\n", x, i, r);
}
return 0;
}