题目1004:母牛的故事

题目
在这里插入图片描述输入
在这里插入图片描述输出
在这里插入图片描述样例输入

2
4
5
0

样例输出

2

4

6

问题分析

首先,我们可以列出前四年中每一年的母牛头数,因为只有在小母牛出生后第四年时才能生小母牛,所以从第n(n>=5)年开始,第n年母牛的数量=第n-1年的母牛数量+第n-3年的母牛数量。因为第n年的母牛数量等于前一年的数量加上能够生产的母牛数量。

C代码

#include<stdio.h>
main()
{
    
    
	int a[55]={
    
    1,1,2,3,4};    //a[0]不需要可以随便赋值
	int n,i,j=0,p,b[100]={
    
    0};   //数组b[100]用作记录要输出的母牛头数
	for(i=5;i<=55;i++)      //求出每一年的母牛数量
 		a[i]=a[i-1]+a[i-3];
	scanf("%d",&n);
	while(n!=0&&n<55)       //0<n<55,当n=0时结束;
	{
    
    
		b[j]=a[n];
		j=j+1;
		p=j;
		scanf("%d\n",&n);	
	}
	for(p=0;p<j;p++)         //输出所对应输入年数的母牛数量
		printf("%d\n",b[p]);
}

猜你喜欢

转载自blog.csdn.net/qq_46724903/article/details/112759495
今日推荐