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小时内删除。