#include <stdio.h>
int main()
{
int arr[50] = { 0 };//由于前一项与后一项存在密不可分的关系,而数组有下标,优先考虑数组较为简单
arr[1] = 1;
arr[2] = 1;
int sum = 0;
int n = 0;
scanf("%d", &n);
if (n == 1 || n == 2)//第一项和第二项较为特殊
{
printf("%d", 1);
}
if (n >= 3)
{
for (int i = 3;i <= n;i++)
{
arr[i] = arr[i - 1] + arr[i - 2];//抓住递推数列特点
sum = arr[i];
}
printf("%d", sum);
}
return 0;
}

京公网安备 11010502036488号