| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
共有 1791 人关注过本帖
标题:【求助】牛的繁殖问题!
取消只看楼主 加入收藏
mandown1991
Rank: 4
等 级:业余侠客
帖 子:262
专家分:252
注 册:2011-3-2
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:3 
【求助】牛的繁殖问题!
原题目如下:
若一头刚出生的小母牛从第四个年头开始,每年初生一头小母牛,且没有牛死亡,按此规律,第20年时共有多少头母牛?
我写的代码如下:
程序代码:
#include<stdio.h>
int main(void)
{
    int i,a=1,b=0,c=0,d=1;
    printf("a\tb\tc\td\n");
    for(i=1;i<=20;i++)
    {
        printf("%d\t%d\t%d\t%d\n",a,b,c,d);
        a=b;
        b=c;
        c=d;
        d=a;
        d=a+c;
    }
    printf("第20年的牛的总数为%d只!\n",d);
    return 0;
}
i是年份,a、b、c、d分别是每年生下来的母牛数,程序最后输出的结果是1278,但是如果把printf()函数改为printf("第20年的牛的总数为%d只!\n",c);的话,输出的结果就是正确答案872,我自己总结出的公式是第四年所生母牛数等于第一年和第三年的所生母牛数的和。
我也有在网上找到过答案,但我想自己写,可是不知道是逻辑错误还是其他错误,请各位前辈斧正!谢谢!
补充一下:第二个printf()函数的作用是列出计算机执行的过程!


[ 本帖最后由 mandown1991 于 2011-3-18 14:01 编辑 ]
2011-03-18 14:00
mandown1991
Rank: 4
等 级:业余侠客
帖 子:262
专家分:252
注 册:2011-3-2
收藏
得分:0 
回复 3楼 刘定邦
哇!!高啊!实在是高!收藏了!谢谢啊!
2011-03-18 22:34
mandown1991
Rank: 4
等 级:业余侠客
帖 子:262
专家分:252
注 册:2011-3-2
收藏
得分:0 
回复 2楼 草狼
谢谢你的回复!请问如果不用数组行不行啊!
2011-03-18 22:36
mandown1991
Rank: 4
等 级:业余侠客
帖 子:262
专家分:252
注 册:2011-3-2
收藏
得分:0 
我换了个思路:
程序代码:
#include <stdio.h>
int main(void)
{
    int a=1,b=1,c=1,d=0,i;   
    printf("a\tb\tc\td\n");
    printf("%d\t%d\t%d\t%d\n",a,b,c,d);
    for(i=4;i<=20;i++)
    {
        d=a+c;
        a=b;
        b=c;
        c=d;
        printf("%d\t%d\t%d\t%d\n",a,b,c,d);
    }
    printf("第20年母牛的总数为%d\n",d);
    return 0;
}
这样就行了,令a、b、c、d分别代表总共的母牛数,我觉得这样比较方便!
2011-03-19 00:09
快速回复:【求助】牛的繁殖问题!
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.014363 second(s), 8 queries.
Copyright©2004-2025, BC-CN.NET, All Rights Reserved