C语言程序设计(第三版)何钦铭著 习题2-6
习题一览表 |
---|
1. C语言程序设计(第三版)何钦铭著 习题2-1 |
2.C语言程序设计(第三版)何钦铭著 习题2-2 |
3.C语言程序设计(第三版)何钦铭著 习题2-3 |
4.C语言程序设计(第三版)何钦铭著 习题2-4 |
5.C语言程序设计(第三版)何钦铭著 习题2-5 |
6.C语言程序设计(第三版)何钦铭著 习题2-6 |
题目
求给定序列前n项和(1!+2!+…)∶ 输入一个正整数n,求e=1!+2!+ 3!+…+n!的值。
要求定义和调用函数 fact(n)计算n!,函数类型是 double。试编写相应程序。
分析过程
输入
条件:输入一个正整数n
输出
条件:e=1!+2!+ 3!+…+n!的值
要求:定义和调用函数 fact(n)计算n!,函数类型是 double
代码
#include <stdio.h>
double fact(int n);/*计算n!函数声明*/
double fact(int n){
double sum = 1; /*存储n!计算总和*/
for(int j = 1 ; j<=n ; j++)
sum *= j;
return sum;
}
int main () {
/*定义变量*/
int n = 0; /*定义变量,存储输入的正整数n*/
double sum = 0; /*存储计算总和*/
/*赋值*/
printf("请输入正整数n:\n"); /*输入提示*/
scanf("%d\n", &n); /*输入n整数并赋给变量*/
/*计算数据和*/
for(int i = 1 ; i<=n ; i++)
sum += fact(i); /*依次计算第i个元素值的平方根,加到sum上*/
/*输出计算结果*/
printf("前%d个数的总和为:%.2f \n", n, sum);/*输出提示*/
return 0;
}