Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2341815
  • 博文数量: 816
  • 博客积分: 10000
  • 博客等级: 上将
  • 技术积分: 5010
  • 用 户 组: 普通用户
  • 注册时间: 2008-12-17 17:57
文章分类

全部博文(816)

文章存档

2011年(1)

2008年(815)

分类:

2008-12-17 18:03:53

我们学校用的是清华的<程序设计基础>,吴文虎主编,在讲到递归的问题时,举的是哈诺塔的例子,程序代码如下,

#include                         //预编译命令
using namespace std;
int step=1;
void move(int,char,char,char);
int main()
{
int a;int b;int c;
int n;
cout <<"请输入盘数n="< cin >>n;
cout <<"在三根柱子上移动"< move(n,a,b,c);
return 0;
}



void move(int m,char p,char q,char r)
{
if (m==1)
{
cout<<"["< step++;
}
else
{
move (m-1,p,r,q);
cout <<"["< step ++;
move(m-1,q,p,r);
}
}



我的问题就是,为什么在这段代码中,他根本就没有解释那个定义的move这个函数是怎么操作的,,,难道这样也可以吗?。。。所谓的面向对象。。。还是说树上把有些东西省了没写。。

--------------------next---------------------

阅读(1112) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~