编写函数sum_fac,求1!+2!+3!+…+n!。
时间: 2023-11-21 21:04:59 浏览: 98
以下是C语言和Java语言的实现方法:
C语言实现:
```c
#include <stdio.h>
int fact(int n);
long sum_fac(int n) {
int i;
long sum = 0;
for (i = 1; i <= n; i++) {
sum += fact(i);
}
return sum;
}
int fact(int n) {
int i;
long result = 1;
for (i = 2; i <= n; i++) {
result *= i;
}
return result;
}
int main() {
int n;
long sum;
printf("输入n(n>0)\n");
scanf("%d", &n);
sum = sum_fac(n);
printf("sum=%ld\n", sum);
return 0;
}
```
Java语言实现:
```java
public class Ks {
public static void main(String args[]) {
int sum = 0;
int n = 3;
Ks s = new Ks();
sum = s.sum_fac(n);
System.out.println(sum);
}
public int sum_fac(int n) {
int i;
int sum = 0;
for (i = 1; i <= n; i++) {
sum += fac(i);
}
return sum;
}
public int fac(int n) {
int i;
int result = 1;
for (i = 2; i <= n; i++) {
result *= i;
}
return result;
}
}
```
阅读全文