从键盘上输入 n 的值,用 for 语句求 n!。允许用户重复输入,直到输入0,退出程序。用简单的c语言编写
时间: 2024-12-17 09:16:36 浏览: 27
五章节循环结构C程序设计PPT学习教案.pptx
在C语言中,你可以使用for循环和递归来计算阶乘。下面是一个简单的示例,它会提示用户输入数字n,并计算n的阶乘,直到用户输入0为止:
```c
#include <stdio.h>
unsigned long long factorial(int n) {
if (n == 0 || n == 1) {
return 1; // 阶乘的基础情况,0和1的阶乘都是1
} else {
return n * factorial(n - 1); // 递归调用,n的阶乘等于n乘以(n-1)的阶乘
}
}
int main() {
int n;
printf("请输入一个非负整数(输入0结束):");
while (1) {
scanf("%d", &n);
if (n <= 0)
break; // 输入0或者负数时跳出循环
unsigned long long result = factorial(n);
printf("输入的数字 %d 的阶乘是:%llu\n", n, result);
printf("请输入一个非负整数(输入0结束):");
}
return 0;
}
```
在这个程序中,我们首先检查输入是否为0或负数,如果是,则跳出循环。然后计算并打印阶乘结果,接着继续请求新的输入。
阅读全文