解题思路:
根据题目意思,写两个function即可!
在C语言math.h库文件中本来就有x的n次方的函数pow()。因此在mypow函数中只需要将其返回即可。
注意事项:
x - x2/2! + x3/3! + ... + (-1)n-1xn/n!
注意第一项为: x^1/1!。即式子中的x是从1到n变化的。
注意使用flag标志。
参考代码:
#include <stdio.h> #include <math.h> double fact(double n) //求阶乘 { double sum=1; for(int i=1; i<=n; i++) { sum*=i; } return sum; } double mypow(double x,double n) //求x的n次方 { return (double)pow(x,n); } int main() { double x,n,sum=0; scanf("%lf%lf",&x,&n); int flag=1; for(int i=1; i<=n; i++) { sum+=flag*mypow(x,i)/fact(i); flag*=(-1); } printf("%.4lf",sum); return 0; }
0.0分
0 人评分