(2)分别使用while、for、do+while语句计算s=1!+3!+5!+7!+n!
时间: 2023-11-15 11:03:14 浏览: 108
可以使用以下代码来计算s=1!+3!+5!+7!+n!:
```
int n = 7; // 假设n为7
int s = 0;
int i = 1;
int j = 1;
while (i <= n) {
j = 1;
int factorial = 1;
while (j <= i) {
factorial *= j;
j += 2;
}
s += factorial;
i += 2;
}
System.out.println("s=" + s);
```
```
int n = 7; // 假设n为7
int s = 0;
for (int i = 1; i <= n; i += 2) {
int factorial = 1;
for (int j = 1; j <= i; j += 2) {
factorial *= j;
}
s += factorial;
}
System.out.println("s=" + s);
```
```
int n = 7; // 假设n为7
int s = 0;
int i = 1;
do {
int factorial = 1;
int j = 1;
do {
factorial *= j;
j += 2;
} while (j <= i);
s += factorial;
i += 2;
} while (i <= n);
System.out.println("s=" + s);
```
其中,第一个while循环中的j每次增加2,是因为只需要计算奇数的阶乘;第二个for循环中的i每次增加2,同样是因为只需要计算奇数的阶乘;第一个do-while循环中的j每次增加2,是因为只需要计算奇数的阶乘,而i每次增加2,同样是因为只需要计算奇数的阶乘。
阅读全文