题目描述:
输入一个正数x和一个正整数n,求下列算式的值。要求定义两个调用函数:fact(n)计算n的阶乘;mypow(x,n)计算x的n次幂(即xn),两个函数的返回值类型是double。
x - x2/2! + x3/3! + ... + (-1)n-1xn/n!
×输出保留4位小数。
x n
数列和
2.0 3
样例输出:
1.3333
代码实现:
#include <stdio.h> double fact(int n)//阶乘函数 { int i; double sum = 1; for(i = 1; i <= n; i++) { sum *= i; } return sum; } double mypow(int x, int n)//幂函数 { double sum = 1; int i; for(i = 1; i <= n; i++) { sum *= x; } return sum; } int main() { int i; long long n;//这里考虑阶乘的数值可能很大 double x; double sum = 0; scanf("%lf%lld", &x, &n); //自己写的 int flag = 1; for(i = 1; i <= n; i++) { sum += flag*mypow(x,i)/fact(i); //最初括号里写的是n,这里应该是i flag = -flag; } //别人的写法 // int flag = 1; // for(i = 1; i <= n; i++, flag = -flag) // { // sum += flag*mypow(x,i)/fact(i); // } printf("%.4lf", sum); return 0; }
0.0分
0 人评分
大小写转换 (C语言代码)浏览:838 |
C语言程序设计教程(第三版)课后习题5.6 (C语言代码)浏览:850 |
2004年秋浙江省计算机等级考试二级C 编程题(1) (C语言代码)浏览:579 |
【偶数求和】 (C语言代码)浏览:430 |
C语言程序设计教程(第三版)课后习题10.5 (C语言代码)浏览:534 |
C语言程序设计教程(第三版)课后习题11.3 (C语言代码)浏览:562 |
一元一次方程 (C语言代码)浏览:4036 |
简单的a+b (C语言代码)浏览:506 |
C语言程序设计教程(第三版)课后习题5.4 (C语言代码)浏览:454 |
C语言程序设计教程(第三版)课后习题8.5 (C语言代码)浏览:549 |