Online Compiler C

#include <stdio.h> int main() { int n, m = 1; scanf("%d", &n); if(n==0){ printf("%d",m); return 0; } for (int i = 1; i <= n; i++) { m *= i; } printf("%d", m); return 0; }
这段代码的功能是计算输入整数 n 的阶乘(n!),并输出结果。它使用一个循环从1乘到n,将结果累乘到变量 m 中。当输入为0时,直接输出1(因为0! = 1)。

- 注意变量 m 的类型是 int,当 n 较大时(比如 n=13 或更大),阶乘结果会超出 int 类型的范围,导致溢出。你可以思考如何让程序处理更大的阶乘结果。
- 代码中 m 的初始值是1,这适用于 n>=0 的情况。但如果你输入负数,程序不会给出有意义的结果。可以想想是否需要处理输入为负数的情况。