运用c语言编写程序,求1!+2!+......+10!。
时间: 2023-08-13 20:04:31 浏览: 45
可以使用循环和递归两种方法来实现求1!+2!+......+10!的运算。
方法一:循环
循环方法可以通过for循环来实现,具体代码如下:
```c
#include <stdio.h>
int main()
{
int i, j;
long sum = 0, factorial = 1;
for (i = 1; i <= 10; i++)
{
factorial = 1;
for (j = 1; j <= i; j++)
{
factorial *= j;
}
sum += factorial;
}
printf("1!+2!+...+10! = %ld\n", sum);
return 0;
}
```
方法二:递归
递归方法可以通过递归函数来实现,具体代码如下:
```c
#include <stdio.h>
long factorial(int n);
int main()
{
int i;
long sum = 0;
for (i = 1; i <= 10; i++)
{
sum += factorial(i);
}
printf("1!+2!+...+10! = %ld\n", sum);
return 0;
}
long factorial(int n)
{
if (n == 0 || n == 1)
{
return 1;
}
else
{
return n * factorial(n - 1);
}
}
```
以上两种方法都可以求得1!+2!+......+10!的结果。