GSBabe 2022-10-24 14:39 采纳率: 50%
浏览 917
已结题

一头小母牛,从出生起第四个年头开始每年生一头母牛,按此规律,第n年有头母牛?(C语言 递归函数)

题目
一头小母牛,从出生起第四个年头开始每年生一头母牛,按此规律,第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);
}

下面是我运行出来的结果

img

  • 写回答

1条回答 默认 最新

  • 心寒丶 全栈领域优质创作者 2022-10-24 14:51
    关注

    一个%d,怎么有两个变量,那你输出的就是年份了呀,
    改成 printf("There are %d cows. \n", MyGetCowR(year));

    img

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录

报告相同问题?

问题事件

  • 系统已结题 11月1日
  • 已采纳回答 10月24日
  • 创建了问题 10月24日

悬赏问题

  • ¥15 linux驱动,linux应用,多线程
  • ¥20 我要一个分身加定位两个功能的安卓app
  • ¥15 基于FOC驱动器,如何实现卡丁车下坡无阻力的遛坡的效果
  • ¥15 IAR程序莫名变量多重定义
  • ¥15 (标签-UDP|关键词-client)
  • ¥15 关于库卡officelite无法与虚拟机通讯的问题
  • ¥15 目标检测项目无法读取视频
  • ¥15 GEO datasets中基因芯片数据仅仅提供了normalized signal如何进行差异分析
  • ¥100 求采集电商背景音乐的方法
  • ¥15 数学建模竞赛求指导帮助