欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

手搓一个兔子问题(分享一个C语言问题,持续更新...)

程序员文章站 2022-03-10 15:07:55
大家好,我是小七夜,今天就不分享C语言的基础知识了,分享一个比较好玩的C语言经典例题:兔子问题 题目是这样的:说有一个穷苦人这天捉到了一只公兔子,为了能繁衍后代他又买了一只母兔子,后来兔子开始生小兔子(一次生一个小兔子),假设兔子不会死亡,第二十次这个穷苦人能有多少只兔子呢? 题目解析:分析题目我们 ......

大家好,我是小七夜,今天就不分享c语言的基础知识了,分享一个比较好玩的c语言经典例题:兔子问题

  题目是这样的:说有一个穷苦人这天捉到了一只公兔子,为了能繁衍后代他又买了一只母兔子,后来兔子开始生小兔子(一次生一个小兔子),假设兔子不会死亡,第二十次这个穷苦人能有多少只兔子呢?

  题目解析:分析题目我们可以看出,刚开始第一次是一只兔子,第二次是一只兔子,第三次是两只,第四次是三只......这样继续推,我们可以得出这样一个规律:

          次数          只数

           1           1

           2           1

           3           2

           4           3

           5           5

          ......          .......

 也就是1,1,2,3,5,8,13....后面一个数等于前面两个数的和,(这个数列也叫裴波那切数列),既然得出了规律,那么我们就可以试着写一下代码:

#include <stdio.h>
int main()
{
    int i=1,j=1,k;
    printf("%d%d\n",i,j);//前两次输出的数
    for(k=1;k<=9;k++)//由于是一对一对的显示所以我们只需要循环9次
    {
        i=i+j;//每次都进行替换
        j=i+j;//每次都进行替换
        printf("%d%d\n",i,j);
    }
}

嗯,大概就是这样子,这个兔子问题算是一个蛮经典的c语言题目,关于for循环的知识我会在以后的c语言基础知识中讲解到,那么今天就是这样,谢谢大家,希望能对大家有帮助。