10-13笔试总结

递归和非递归实现N的阶乘

递归实现:

int recv(int n)
{
	int sum = 1;
	if (1 == n)
	{
		return 1;
	}
	else
		sum = n*recv(n - 1);
	return sum;
}
 非递归实现 
  

#include
int main()
{
 int n,i,s;
 while(scanf("%d",&n)==1)
 {
  if(n==0)
  {
   puts("0");
   continue;
  }
  s=1;
  for(i=1;i<=n;i++)
   s*=i;
  printf("%d\n",s);
 }
 return 0;
}


你可能感兴趣的:(面试总结)