1 solutions
-
0
C :
#include <stdio.h> double fact(int); //如果函数是int类型,当大于65535时会截断溢出,除以零 int main() { int n, i; double sum = 0.0; scanf("%d", &n); for(i = 1; i <= n; i++) { sum += 1.0 / fact(i); } printf("sum=%.5lf\n", sum); return 0; } double fact(int k) { int f; if(k == 0 || k == 1) { return 1; }else { return (double)fact(k - 1) * k; } }C++ :
#include<iostream> #include<cstdio> using namespace std; double fact(int n) { double s=1; for (int i=1; i<=n; i++) s*=i; return s; } int main() { int n; cin>>n; double sum=0; for (int i=1; i<=n; i++) sum+=1/fact(i); printf("sum=%.5lf\n",sum); return 0; }
- 1
Information
- ID
- 16803
- Time
- 1000ms
- Memory
- 128MiB
- Difficulty
- (None)
- Tags
- (None)
- # Submissions
- 0
- Accepted
- 0
- Uploaded By