我最近开始学习C,所以我意识到我的问题非常基础,但是非常感谢任何帮助.
我试图获得函数事实将res值返回到main,但是当我在main中打印出结果时我得到0.通过插入一些print语句我可以看到res在事实例程中正确计算但是结果未正确返回到main.
我确定我在这里遗漏了一些非常基本的东西.
谢谢
#include <stdio.h>
unsigned long fact (int n){
unsigned long res = 1;
while ( n >= 0 )
{
res *= n;
n--;
}
return res;
}
int main (void){
int n;
unsigned long res;
printf("Insert number:\n");
scanf("%d", &n );
res = fact (n);
printf("The factorial number is %lu", res);
return 0;
}
Run Code Online (Sandbox Code Playgroud)