递推:不断利用已有信息推导出新的信息
顺推——斐波那契数列
#include "stdio.h"
int main()
{
int months[13];
months[0]=1;
months[1]=1;
for(int month_index=2;month_index<=12;month_index++)
{
months[month_index]=months[month_index-2]+months[month_index-1];
}
printf("%d rabbits after one year.\n",months[12]);
return 0;
}
逆推——银行存款
#include "stdio.h"
int main()
{
float account_balance[48];
account_balance[47]=1000;
account_balance[46]=1000+account_balance[47]/(1.71/100/12+1);
for (int month_index=46;month_index>=1;month_index--)
{
account_balance[month_index-1]=1000 + account_balance[month_index]/(1.71/100/12+1);
}
printf("%f needed at first month\n",account_balance[0]);
return 0;
}