使用C语言实现积乘到输入的数字 使用C语言实现积乘到输入的数字
时间: 2024-09-11 13:09:27 浏览: 47
在C语言中,你可以创建一个简单的循环结构来实现计算输入数字的乘方。下面是一个示例函数,它会读取用户输入的整数n,并返回n的阶乘:
```c
#include <stdio.h>
unsigned long long factorial(int n) {
unsigned long long result = 1; // 初始化结果为1,因为0! 和 1! 都等于1
if (n >= 0) { // 验证输入是非负数
for (int i = 1; i <= n; i++) {
result *= i;
}
} else {
printf("错误:输入的数字必须是非负整数。\n");
}
return result;
}
int main() {
int num;
printf("请输入一个非负整数: ");
scanf("%d", &num);
// 检查输入是否有效并打印结果
if (factorial(num) != ULONG_MAX && factorial(num) > 0) {
printf("数字 %d 的阶乘是: %llu\n", num, factorial(num));
} else {
printf("计算过程出错或结果过大。\n");
}
return 0;
}
```
在这个程序中,`factorial` 函数通过遍历从1到n的所有整数并将它们相乘来计算阶乘。注意,如果输入非常大,可能会导致结果溢出,因此这里我们使用了`unsigned long long`类型的变量来存储结果。
阅读全文