用C语言编写程序求整数n(n<11)的阶乘 要求在主函数中输入n 计算之输出结果
时间: 2024-10-19 11:03:21 浏览: 20
c代码-编写一个求阶乘的函数Fact(),然后在主函数中,计算并输出1到n之间所有数的阶乘值
在C语言中,我们可以使用循环结构来计算整数n的阶乘。阶乘是指从1乘到该数的所有正整数相乘的结果。以下是如何在一个程序中实现这个功能:
```c
#include <stdio.h>
// 定义一个函数来计算阶乘
unsigned long int factorial(int n) {
if (n == 0 || n == 1) { // 阶乘的基本条件,0! = 1 和 1! = 1
return 1;
} else {
unsigned long int result = 1; // 初始化结果为1
for (int i = 2; i <= n; i++) {
result *= i; // 每次循环将当前数值乘到结果上
}
return result;
}
}
int main() {
int n;
printf("请输入一个小于11的正整数: ");
scanf("%d", &n); // 输入n
// 确保输入的n小于11
if (n >= 11) {
printf("抱歉,n必须小于11。\n");
return 0;
}
unsigned long int fact = factorial(n);
printf("n! 的值是: %lu\n", fact);
return 0;
}
```
在这个程序中,`factorial` 函数接受一个整数 `n` 并返回它的阶乘。在主函数 `main` 中,我们首先读取用户输入的整数,然后检查它是否小于11。如果满足条件,我们就计算并打印阶乘结果。
阅读全文