这个程序出了什么问题?
#include<stdio.h>
long sum(int a,int b);
long factorial(int n);
main()
{
int n1,n2;
long a;
scanf("%d","%d",&n1,&n2);
a=sum(n1,n2);
printf("a=%ld",a);
}
long sum(int a,int b)
{
long c1,c2;
c1=factorial(a);
c2=factorial(b);
return(c1+c2);
}
long factorial(int n)
{
long rtn=1;
int i;
for(i=1;i<=n;i++)
rtn*=i;
return(rtn);
}输入2,3.
这个程序我算出来是等于8,但是在C-FREE里编译连接输入之后却得不到答案,在WIN-TC里面得到的答案确实0.
有哪位高手可以指导一下吗?谢谢了.