题目
一头小母牛,从出生起第四个年头开始每年生一头母牛,按此规律,第n年有头母牛?
我使用的是DevC++ 6.3
代码可以正常运行 有return 0 但是算出来的结果不符合题目的正确算法
后面递归函数如果year<4 那么输出结果都应该1才对
可是我的结果是我输入数字是多少 输出就是多少 哪怕超过4 输出结果也是和输入一样
不太清楚问题出在哪里 麻烦各位帮忙看看!!
代码
#include <stdio.h>
int MyGetCowR(int);
int main()
{
int year;
printf("A heifer gives birth to a cow every year from the fourth year of life. \n According to this rule, how many cows are there in the n year? \n");
printf("Input n = ");
scanf("%d",&year);
printf("There are %d cows. \n", year, MyGetCowR(year));
return 0;
}
int MyGetCowR(int year)
{
if (year < 4)
return 1;
else
return MyGetCowR(year-1) + MyGetCowR(year-3);
}
下面是我运行出来的结果