您的位置:首页 > 其它

c典型算法 递归

2007-09-06 10:59 190 查看
--------------------------------
#include <stdio.h>
#include <stdlib.h>

static int count = 0;

int print( char x,char y)
{
printf( "%c ---> %c/n", x, y);
return ++count;
}

void move(int n,char x,char y,char z)
{
int count=0;
if(n==1)
{
print(x,z);
}
else
{
move(n-1,y,x,z);
print(x,z);
//count++;
move(n-1,z,y,x);
// return count;
}

}

void main(void)
{
int m;
printf("输入汉诺塔层数:/n");
scanf("%d",&m);
move(m,'A','B','C');
printf("移动了%d次/n",count);
system("pause");

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: