自学内容网 自学内容网

C语言案例——青蛙跳台阶问题

题目描述

一只青蛙,一次可以跳1个台阶,也可以跳两个台阶。

问:这只青蛙,跳到第n个台阶,有多少种跳法

解法思路

类似斐波那契数问题

当n>2时求跳上第n级台阶有多少种跳法有:

jump(n)=jump(n-1)+jump(n-2)

解法代码

#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>

int jump(int n)
{
if (n == 1)
return 1;
else if (n == 2)
return 2;
else
return jump(n - 1) + jump(n - 2);
}

int main()
{
int x = 0;

scanf("%d", &x);
int need = jump(x);
printf("%d\n", need);

return 0;
}

运行结果

输入:5

输出:8


原文地址:https://blog.csdn.net/huc_error/article/details/143460796

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!