我到底错在哪了?
题目是这样的 有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月 后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?
/*下面是我写的*/
main()
{
int n;
printf("\nplease input the month\n");
scanf("%d",&n);
if(n>2)
zh(n-2);
else
printf("\ntotal is 1\n");
}
zh(int n)
{
int sum3=1,sum2=1,sum1=1,sum;/*定义前三个月的兔子总数,sum3是3个月前,sum2是2个月前,sum1是上个月,sum是本月*/
if(n>=0)
{
sum=sum3+sum1;/*本月兔子数等于三个月前的兔子数+上月兔子数*/
n--;
sum3=sum2;sum2=sum1;sum1=sum;
zh(n);
}
else
printf("\ntotal is %d",sum);
}/*都调试过,没有问题就是输出的兔子数老不对,差的太离谱了,比如我输入3,居然输出513,,我到底哪里错了,不要骂我啊 我是新人*/
[此贴子已经被作者于2006-7-14 8:50:59编辑过]