用c语言编写求n!的递归函数,在double类型的主函数中调用并输出
时间: 2024-03-23 16:41:31 浏览: 62
好的,下面是用C语言编写求n!的递归函数的代码:
```
double factorial(int n)
{
if(n == 0) return 1;
return n * factorial(n - 1);
}
```
这个函数使用了递归的方式来计算n的阶乘。如果n为0,函数返回1;否则,函数返回n乘以调用自身传入n-1的结果。这样,当n为0时,递归结束,函数返回1,否则一直递归到n等于0为止。
下面是主函数的代码:
```
#include <stdio.h>
double factorial(int n);
int main()
{
double result;
int n;
printf("请输入一个整数n:");
scanf("%d", &n);
result = factorial(n);
printf("%d! = %lf", n, result);
return 0;
}
```
这个主函数首先调用上面定义的factorial函数来计算n的阶乘,然后输出结果。注意,这里使用了%lf来输出double类型的结果。
相关问题
用c语言编写求n!的递归函数,在主函数调用并输出,注意n为整型函数类型为double型
好的,下面是代码:
```c
#include <stdio.h>
double factorial(int n);
int main() {
int n;
printf("请输入n的值:");
scanf("%d", &n);
printf("%d! = %.0f\n", n, factorial(n));
return 0;
}
double factorial(int n) {
if (n == 0) {
return 1.0;
} else {
return n * factorial(n - 1);
}
}
```
首先在程序开头声明了一个`factorial`函数,这样在主函数中调用时就不会出现函数未定义的错误。然后定义了`factorial`函数,与上一个答案中的代码相同。在主函数中读入`n`的值,并调用`factorial`函数计算`n!`的值并输出。
用c语言编写求n!的递归函数,在主函数调用并输出。(n为整型,函数类型为double型
好的,下面是代码:
```c
#include <stdio.h>
double factorial(int n) {
if (n == 0) {
return 1.0;
} else {
return n * factorial(n - 1);
}
}
int main() {
int n;
printf("请输入n的值:");
scanf("%d", &n);
printf("%d! = %.0f\n", n, factorial(n));
return 0;
}
```
首先定义一个递归函数`factorial`,它的参数是整数`n`,返回值是`double`类型。当`n`为0时,返回1;否则递归调用`factorial(n-1)`并将结果乘以`n`。在主函数中读入`n`的值,并调用`factorial`函数计算`n!`的值并输出。
阅读全文