解题思路:首先遍历存储数据(年份),再遍历输出数据(该年的母牛数),1-4年的母牛分别是1,2,3,4;从第4年往后,n年的母牛数为n-1年的母牛数加上n-3年的母牛数。
注意事项:再纸上面把1-7年的母牛数都写出来,然后比对数据,找出公式。
参考代码:
#include <stdio.h>
int change(int n)
{
if (n >= 1 && n <=4)
{
return n;
}
else if (n >4)
{
return change(n - 1) + change(n - 3);
}
}
int main()
{
int i;
int a[55]={'\0'} ;//初始化数组
for (i = 0; i < 55; i++)
{
scanf("%d", &a[i]);//遍历输入(年份)
if (a[i] == 0)//数据为0时跳出循环
{
break;
}
}
for (i = 0; i < 55; i++)
{
if (a[i] != 0)
{
printf("%d\n", change(a[i]));//遍历输出(该年的母牛数)
}
}
return 0;
}
0.0分
2 人评分
陶陶摘苹果 (C语言代码)浏览:1615 |
K-进制数 (C++代码)浏览:880 |
C语言程序设计教程(第三版)课后习题6.1 (C语言代码)浏览:468 |
【计算直线的交点数】 (C语言代码)浏览:1463 |
C语言程序设计教程(第三版)课后习题9.8 (C语言代码)浏览:687 |
C语言程序设计教程(第三版)课后习题3.7 (C语言代码)浏览:553 |
A+B for Input-Output Practice (IV) (C语言代码)浏览:503 |
C语言训练-亲密数 (C语言描述,反正怎么都能对)浏览:2177 |
C二级辅导-进制转换 (C语言代码)浏览:700 |
C二级辅导-统计字符 (C语言代码)浏览:487 |