目录
7-245 斐波那契数列
分数 10
全屏浏览题目
切换布局
作者 usx程序设计类课程组
单位 绍兴文理学院
意大利数学家斐波那契(Leonardo Fibonacci)是12、13世纪欧洲数学界的代表人物。他提出的“兔子问题”引起了后人的极大兴趣。
“兔子问题”假定一对大兔子每一个月可以生一对小兔子,而小兔子出生后两个月就有繁殖能力,问从一对小兔子开始,n个月后能繁殖成多少对兔子?
输入格式:
首先输入一个正整数T,表示测试数据的组数,然后是T组测试数据。每组测试输入一个正整数n(1≤n≤46)。
输出格式:
对于每组测试,输出n个月后能繁殖成的兔子对数。
输入样例:
1
4
输出样例:
3
#include <stdio.h>
int main()
{
int sn[47] = {0,1};
int i,t,n;
for(i=2;i<=46;i++){
sn[i] = sn[i-1] + sn[i-2];
}
scanf("%d",&t);
for(i=0;i<t;i++){
scanf("%d",&n);
printf("%d\n", sn[n]);
}
return 0;
}
7-246 递归函数返回一段连续整数的和
分数 100
全屏浏览题目
切换布局
作者 于延
单位 哈尔滨师范大学
任务描述
编写函数,函数的形式参数为两个整数a和b(0<a<=b),函数返回a与b之间所有整数的和。要求分别用非递归和递归两种方式分别实现,并请尝试不同的递归策略。主函数中输入两个整数m和n,输出从m到n之间连续整数的和。
输入样例:
1 10
输出样例:
55
输入样例:
20 30
输出样例:
275
输入样例:
100 200
输出样例:
15150
#include<stdio.h>
int sum_recursion(int a,int b);
int sum_recursion(int a,int b)
{
int i,s=0;
for(i=a;i<=b;i++)
{
s=s+i;
}
return s;
}
int main()
{
int m,n;
scanf("%d%d",&m,&n);
printf("%d",sum_recursion(m,n));
return 0;
}