用C语言写输入一个数 输出这个数的阶乘
时间: 2024-05-14 18:14:07 浏览: 101
以下是用C语言编写的程序,可以输入一个数并输出它的阶乘:
```
#include <stdio.h>
int main() {
int num, i;
long long fact = 1;
printf("Enter a number: ");
scanf("%d", &num);
for (i = 1; i <= num; i++) {
fact *= i;
}
printf("%d! = %lld\n", num, fact);
return 0;
}
```
在此程序中,我们使用了一个整数变量 `num` 来接收用户输入的数值。然后,我们使用一个循环来计算这个数的阶乘,将其存储在一个长整型变量 `fact` 中。最后,我们在屏幕上输出计算结果。
相关问题
用C语言实现输入一个数求这个数的阶乘
好的,您可以参考以下代码:
```c
#include <stdio.h>
int main() {
int n, i;
long long factorial = 1;
printf("请输入一个正整数:");
scanf("%d", &n);
// 计算阶乘
for (i = 1; i <= n; ++i) {
factorial *= i;
}
printf("%d 的阶乘为 %lld", n, factorial);
return 0;
}
```
在这个程序中,我们首先读取用户输入的整数 `n`,然后使用一个循环来计算 `n` 的阶乘。由于阶乘的结果可能很大,我们使用 `long long` 类型来存储结果。最后,我们将结果输出到屏幕上。
c语言中输入一个数n,输出n的阶乘
在C语言中,计算一个数n的阶乘通常涉及到循环结构,因为阶乘的定义是所有小于及等于n的正整数相乘的结果。下面是一个简单的函数示例,用于计算并输出阶乘:
```c
#include <stdio.h>
long long factorial(int n) {
if (n == 0 || n == 1) {
return 1; // 阶乘的基本情况,0! 和 1! 都等于1
} else {
long long result = 1;
for (int i = 2; i <= n; i++) {
result *= i; // 通过循环逐次将i乘到结果上
}
return result;
}
}
int main() {
int num;
printf("请输入一个非负整数:");
scanf("%d", &num);
if (num >= 0) { // 检查输入是否合法
printf("阶乘结果是:%lld\n", factorial(num));
} else {
printf("错误!输入只能是非负整数。\n");
}
return 0;
}
```
在这个程序中,`factorial`函数接受一个整数作为参数,并利用循环计算阶乘。在`main`函数里,用户会被提示输入一个数字,然后调用`factorial`函数并打印出结果。
阅读全文