C语言求1!+2!+3!用do+while
时间: 2023-11-13 22:03:17 浏览: 124
下面是使用do+while循环实现求1!+2!+3!的C语言代码:
```
#include <stdio.h>
int main() {
int n = 3;
int i = 1;
int sum = 0;
int fac = 1;
do {
fac *= i;
sum += fac;
i++;
} while (i <= n);
printf("1! + 2! + 3! = %d\n", sum);
return 0;
}
```
这段代码中,我们使用了do+while循环来实现求1!+2!+3!的和。首先,我们定义了变量n、i、sum和fac,其中n表示要求的阶乘的个数,i表示当前正在计算的阶乘的值,sum表示所有阶乘的和,fac表示当前正在计算的阶乘的值。
然后,我们使用do+while循环来计算1!+2!+3!的和。在循环中,我们首先计算当前阶乘的值,然后将其加入到sum中,最后将i加1,继续计算下一个阶乘的值,直到i大于n为止。
最后,我们使用printf函数输出1!+2!+3!的和。
相关问题
用C语言while、do-while、for三种不同的循环方法编程求1!+2!+3!+…+20!的值;
可以使用while、do-while和for三种循环方法来编程求1!+2!+3!+…+20!的值。下面是使用这三种循环方法的示例代码:
1. 使用while循环:
```c
#include <stdio.h>
int main() {
int n = 1;
int factorial = 1;
int sum = 0;
while (n <= 20) {
factorial *= n;
sum += factorial;
n++;
}
printf("1!+2!+3!+...+20! = %d\n", sum);
return 0;}
```
2. 使用do-while循环:
```c
#include <stdio.h>
int main() {
int n = 1;
int factorial = 1;
int sum = 0;
do {
factorial *= n;
sum += factorial;
n++;
} while (n <= 20);
printf("1!+2!+3!+...+20! = %d\n", sum);
return 0;
}
```
3. 使用for循环:
```c
#include <stdio.h>
int main() {
int factorial = 1;
int sum = 0;
for (int n = 1; n <= 20; n++) {
factorial *= n;
sum += factorial;
}
printf("1!+2!+3!+...+20! = %d\n", sum);
return 0;
}
```
这三种循环方法都可以得到相同的结果,即1!+2!+3!+…+20!的值。
C语言用while、do-while、for三种不同的循环方法编程求1!+2!+3!+…+20!的值
以下是C语言用while、do-while、for三种不同的循环方法编程求1!+2!+3!+…+20!的值的代码实现:
1. while循环实现
```c
#include <stdio.h>
int main() {
double sum = 0, a = 1;
int i = 1;
while (i <= 20) {
a *= i;
sum += a;
i++;
}
printf("1!+2!+3!+...+20!=%lf\n", sum);
return 0;
}
```
2. do-while循环实现
```c
#include <stdio.h>
int main() {
double sum = 0, a = 1;
int i = 1;
do {
a *= i;
sum += a;
i++;
} while (i <= 20);
printf("1!+2!+3!+...+20!=%lf\n", sum);
return 0;
}
```
3. for循环实现
```c
#include <stdio.h>
int main() {
double sum = 0, a = 1;
for (int i = 1; i <= 20; i++) {
a *= i;
sum += a;
}
printf("1!+2!+3!+...+20!=%lf\n", sum);
return 0;
}
```
阅读全文