第一次写的时候,输出一直输出的为初始值,没有输出阶乘后的值,找了好久问题才发现,下次一定注意
编程时要考虑到0和1的阶乘
代码如下:
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
int JC(int num) {
int i;
int count = 1;
if (num == 1 || num == 0) {
printf("1");
}
for (i = 1; i <= num; ++i) {
count = count*i;
}
return count;
}
int main() {
int num;
int X;
printf("请输入要进行阶乘的数:");
scanf("%d", &num);
X = JC(num);
printf("阶乘的结果为:%d\n", X);
system("pause");
return 0;
}
运行结果如下: