1.求n +(n-1)+ ...... + 1 的和
#include<stdio.h>
int sum(int a)
{
if(a>0)
return a+sum(a-1);
else
return 0;
}
int main()
{
printf("%d",sum(100));
}
2.求n!
#include<stdio.h>
int jiecheng(int a)
{
if(a == 1)
return 1;
else{
return a*jiecheng(a-1);
}
}
int main()
{
printf("%d",jiecheng(10));
}
3.输出n,n-1,n-2,......,1
#include<stdio.h>
void ToPrint(int a)
{
if(a==1)
{
printf("1 ");
return;
}
else{
//从小到大输出
ToPrint(a-1);
printf("%d ",a);
//从大到小输出
//printf("%d ",a);
//ToPrint(a-1);
}
}
int main()
{
ToPrint(10);
}
4.一只小蜜蜂(递归)

#include <stdio.h>
int f(int a,int b)//因为紧邻的三个方块之间的路径有限,可以使用递归
//b是指开始和终点间的距离
{
if(b==2)
return 1;
else if(b==3)
return 2;
else
return f(1,b-1)+f(1,b-2);
}
int main()
{
int n;
int start,end;
scanf("%d",&n);
while(n--)
{
scanf("%d%d",&start,&end);
printf("%d\n",f(1,end-start+1));
}
return 0;
}
309

被折叠的 条评论
为什么被折叠?



