的n值,用for语句、do...while 语句、while语句实现求n的阶乘。
时间: 2024-11-29 12:35:20 浏览: 1
求n阶乘N!的值-Do语句课件
在C语言中,要计算一个数n的阶乘,你可以使用for、do...while 或 while 循环。阶乘定义为从1到n的所有正整数相乘的结果(0的阶乘定义为1)。下面是三种循环结构的示例代码:
1. 使用 for 语句:
```c
#include <stdio.h>
int factorial(int n) {
int result = 1;
for (int i = 1; i <= n; i++) {
result *= i;
}
return result;
}
int main() {
int n;
printf("Enter a non-negative integer: ");
scanf("%d", &n);
if (n >= 0) {
int fact = factorial(n);
printf("The factorial of %d is %d\n", n, fact);
} else {
printf("Invalid input! Please enter a non-negative number.\n");
}
return 0;
}
```
2. 使用 do...while 语句:
```c
#include <stdio.h>
int factorial(int n) {
int result = 1, i = 1;
do {
result *= i++;
} while (i <= n);
return result;
}
// 主函数同上
```
3. 使用 while 语句:
```c
#include <stdio.h>
int factorial(int n) {
int result = 1, i = 1;
while (i <= n) {
result *= i;
i++;
}
return result;
}
// 主函数同上
```
这些函数都会提示用户输入一个非负整数,然后计算并打印该数的阶乘。如果你有特定的n值需要测试,记得替换main函数中的`scanf`和`factorial`调用。
阅读全文