编写一个函数,实现输入一个整数,返回这个整数的阶乘并输出?

如题所述

以下是使用C语言编写的一个函数,能够实现输入一个整数,返回这个整数的阶乘并输出的功能。

```c
#include <stdio.h>

int factorial(int n)
{
if (n == 1) {
return 1;
} else {
return n * factorial(n - 1);
}
}

int main()
{
int num;
printf("请输入一个整数:");
scanf("%d", &num);
int result = factorial(num);
printf("%d的阶乘是:%d
", num, result);
return 0;
}
```

函数 `factorial` 用来计算输入整数的阶乘, 如果输入的整数为1,则返回1,否则,使用递归的方式计算输入整数的阶乘。

在主函数中,首先要求用户输入一个整数,并使用 `scanf` 函数读取用户的输入。然后,使用 `factorial` 函数计算输入整数的阶乘结果,并使用 `printf` 函数输出计算结果。

通过运行程序,可以看到输出结果:

```
请输入一个整数:5
5的阶乘是:120
```

因此,输入整数5的阶乘是120。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2023-03-16

#include <stdio.h>

unsigned long func(int n)

{

    unsigned long t,i;

    for(t=1,i=1;i<=n;++i)

        t*=i;

    return t;

}

int main()

{

    int n;

    scanf("%d",&n);

    printf("%lu\n",func(n));

    return 0;

}