c语言while循环实现n的阶乘
时间: 2023-12-03 15:38:25 浏览: 123
以下是使用C语言while循环实现n的阶乘的代码:
```c
#include <stdio.h>
int main() {
int n, i = 1, ret = 1;
scanf("%d", &n); // 输入n的值
while (i <= n) {
ret *= i;
i++;
}
printf("%d\n", ret);
return 0;
}
```
在这个代码中,我们首先使用`scanf`函数获取用户输入的n的值。然后,我们使用while循环来计算n的阶乘。在每次循环中,我们将`i`乘以`ret`,并将`i`的值加1。当`i`的值大于n时,循环结束,我们将`ret`的值打印出来。
相关问题
利用c语言while循环求n的阶乘
在C语言中,利用`while`循环计算一个数`n`的阶乘是一个常见的编程练习。阶乘是指从1到该数的所有整数相乘的结果。下面是一个简单的示例,展示了如何使用`while`循环来实现:
```c
#include <stdio.h>
long long factorial(int n) {
int i = 1;
long long result = 1;
// 验证输入是否合法,n大于0
if (n < 0) {
printf("错误:阶乘只对非负整数有效.\n");
return -1;
}
while (i <= n) {
result *= i; // 将当前的i值乘到结果上
i++;
}
return result;
}
int main() {
int num;
printf("请输入一个正整数: ");
scanf("%d", &num);
long long fact = factorial(num);
if (fact != -1) {
printf("%d的阶乘是: %lld\n", num, fact);
}
return 0;
}
```
在这个程序中,我们首先初始化`result`为1,然后使用`while`循环从1遍历到`n`,每次循环都将`i`乘到`result`上。当循环结束时,`result`就是所求的阶乘。
用c语言while求n的阶乘
可以使用while循环来求n的阶乘,代码如下:
```c
#include <stdio.h>
int main() {
int n, i = 1, factorial = 1;
printf("请输入一个正整数:");
scanf("%d", &n);
while (i <= n) {
factorial *= i;
i++;
}
printf("%d的阶乘是:%d", n, factorial);
return 0;
}
```
在这个程序中,我们首先从用户输入一个正整数n,然后使用while循环计算n的阶乘。在循环中,我们使用i作为计数器,从1开始逐步递增,每次将i乘以阶乘变量factorial,最终得到n的阶乘。最后我们输出计算结果。