解题思路:
注意事项:
参考代码:
#include<stdio.h>
double mypow(double x, int n);
double fact(int n);
int main(void) {
int i, n;
double x,sn=0;
scanf("%lf %d", &x, &n);
for (i = 1; i <= n; i++) {
sn+= mypow(-1, i-1) * mypow(x, i ) / fact(i);
}
printf("%.4f", sn);
return 0;
}
double mypow(double x, int n) {
double a1 = 1;
for (int i = 0; i < n; i++) {
a1 *= x;
}
return a1;
}
double fact(int n) {
double a2 = 1;
for (int i = 1; i <= n; i++) {
a2 *= i;
}
return a2;
}
0.0分
1 人评分
C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:
一点编程也不会写的:零基础C语言学练课程
解决困扰你多年的C语言疑难杂症特性的C语言进阶课程
从零到写出一个爬虫的Python编程课程
只会语法写不出代码?手把手带你写100个编程真题的编程百练课程
信息学奥赛或C++选手的 必学C++课程
蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程
手把手讲解近五年真题的蓝桥杯辅导课程
#include<stdio.h> #include<math.h> double fact(double n) { if(n<=1) return 1; return n*fact(n-1); } double mypow(double x,double n) { int i; return pow(x,n); } int main() { int i,n; double sum=0,x; scanf("%lf%d",&x,&n); for(i=2;i<=n;i++) { sum+=mypow(x,i)/fact(i); } sum-=x; printf("%.4lf",sum); return 0; } 搞不明白为什么答案错误50%#include<stdio.h> double fact(int n) { int i,N=1; for(i=1;i<=n;i++) N*=i; return N; } double mypow(double x,int n) { int i,X=1; for(i=0;i<n;i++) X*=x; return X; } int main() { double x,s=0; int n; scanf("%lf %d",&x,&n); for(int i=1;i<=n;i++) { s+=mypow(-1,i-1)*mypow(x,i)/fact(i); } printf("%.4lf",s); return 0; } 哪里答案错了 看了半天没发现哪里有问题 233333333333333