浙大版《C语言程序设计(第3版)》题目集习题4-2 求幂级数展开的部分和 (20分)
程序员文章站
2022-06-08 17:02:19
...
求阶乘的函数定义千万不能定义为int,不然会一直出错,我就是这个地方卡了很久,自己也没发现…
#include <stdio.h>
#include <math.h>
double fact(int x) { //用递归函数求阶乘;函数定义为double型;
if (x == 0 || x == 1) {
return 1;
}
else {
return x * fact(x - 1); //函数返回值是阶乘的值,且为double型;
}
}
int main()
{
int i = 1;
double x, item, sum = 1.0;
scanf("%lf", &x);
do { //知道什么时候结束循环,选择do-whlie循环;
item = pow(x, i) / fact(i);
sum += item;
i++;
} while (item >= 0.00001);
printf("%.4lf\n", sum);
return 0;
}