3095 - 2002年秋浙江省计算机等级考试二级C 编程题(2)
输入一个正整数n.求1+1/2!+1/3!+....+1/n!
要求定义并调用函数fact(n)计算n的阶乘,函数返回值的类型是点单精度浮点型。
* 输出保留4位小数
Input
正整数n
Output
数列之和
Examples
Input
2
Output
1.5000
Solution C
#include<stdio.h> int main() { int i,n; double item, sum; sum=0; item=1; scanf("%d",&n); for(i=1;i<=n;++i) { item=item/i; sum+=item; } printf("%.4f",sum); return 0; }
Solution C++
#include<iostream> #include<cstdio> using namespace std; float fact(int n) //求阶乘 { float s=1; for (int i=1; i<=n; i++) s*=i; return s; } int main() { int n; cin>>n; float sum=0; for (int i=1; i<=n; i++) sum+=1/fact(i); printf("%.4f\n",sum); return 0; }