/* 输入x、n后输出下列算式的值,fact(n)实现n!,mypow(x,n)实现xn */ #include <stdio.h> #include<math.h> //程序中需要调用fact函数和pow函数// double fact(int n); //定义fact函数求阶乘// int main(void) { int i,x,flag; //分子为flag// double n,sum; //sum表示总和// printf("Enter x and n: "); scanf_s("%d %f",&x,&n); sum=0; flag=1; n=x; for(i=1;i<=n;i++){ sum=sum+flag*powl(x,i)/fact(i); flag=-flag; //每次循环后分子变号// } printf("%.2f ",sum); return 0; } double fact(int n) //调用fact函数// { int i; double fact=1; for(i=1;i<=n;i++) { fact=fact*i; /*求阶乘*/ } return fact; }