编写 C 程序,提示用户输入一个正整数n,求 n 的阶乘。 注:如果输入的值错误,提示重新输入n 请选择程序语言
时间: 2024-10-20 21:03:33 浏览: 18
c代码-求阶乘n!!111
在C语言中,你可以编写下面这个简单的程序来求解用户输入的正整数n的阶乘。请注意,这里假设用户会提供正确的输入。如果需要处理错误输入,你需要添加额外的错误检查。
```c
#include <stdio.h>
unsigned long long factorial(int n) {
if (n == 0 || n == 1)
return 1;
else
return n * factorial(n - 1);
}
int main() {
int n;
printf("请输入一个正整数n:");
scanf("%d", &n);
// 检查输入是否为正整数
while (n <= 0) {
printf("输入错误!n必须是正整数,请重新输入:");
scanf("%d", &n);
}
unsigned long long result = factorial(n);
printf("n! = %llu\n", result);
return 0;
}
```
在这个程序中,`factorial`函数递归地计算阶乘,而`main`函数负责获取用户的输入并调用该函数。如果输入不是正整数,循环会持续直到用户给出有效的输入。
阅读全文