//递归法!
/*
===========================================
题目:编写阿克曼函数的递归函数程序!
A(m,n)=
- n+1 (m=0)
- A(m-1,1) (m=0)
- A(m-1,A(m,n-1)) (m!=0,n!=0)
===========================================
*/
#include<stdio.h>
int A(int m,int n)
{
if(m==0)
return n+1;
else if(n==0)
return A(m-1,1);
else
return A(m-1,A(m,n-1));
}
void main()
{
int m,n,p,flag=1;
while(flag)
{
printf("m=");
scanf("%d",&m);
printf("n=");
scanf("%d",&n);
p=A(m,n);
printf("A(%d,%d)=%d\n\n",m,n,p);
}
}
/*
===========================================
评:
这道题目很简单,已经明确了递归函数的具体形式,直接
写一个函数,调用即可!但是,如果要手算,这是一个相
当复杂的调用过程,如果让你把m和n分别从1到10算出来,
可能需要个把小时才行!利用计算机几分钟就搞定了!
===========================================
*/
版权声明:本文为博主原创文章,未经博主允许不得转载。
时间: 2024-11-13 06:37:37