1.编写计算X的Y次幂的递归函数getpower(int x,int ),并在主程序中实现输入输出。
#include"stdio.h"
long getpower(int x,int y)
{
if(y==1)
return x;
else
return x*getpower(x,y-1);
}
void main()
{
int num,power;
long answer;
printf("please input a number:");
scanf("%d",&num);
printf("please input the number's power series:");
scanf("%d",&power);
answer=getpower(num,power);
printf("结果是:%ld\n",answer);
}
结果说明:输入61再输入5求得61的5次幂为844596301.
2编写计算学生年龄的递归函数。
#include<stdio.h>
int age(int n)
{
int c;
if(n==1)
c=10;
else
c=age(n-1)+2;
return c;
}
void main()
{
int n=5;
printf("the five student'sage is:%d years old\n",age(n));
}
结果说明:第五个学生的年龄为18岁。
3.编写递归函数实现Ackman函数。
#include<stdio.h>
Acm(int m,int n)
{
if(m==0)
return n+1;
else if(n==0)
return Acm(m-1,1);
c语言库函数 else
return Acm(m-1,Acm(m,n-1));
}
int main()
{
printf("Acm(2,1)=%d\n",Acm(2,1));
printf("Acm(3,2)=%d\n",Acm(3,2));
return 0;
}
结果说明:利用递归函数求得Acm(2,1)=5,Acm(3,2)=29.
实验小结:
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论