高分求高手帮忙,利用二叉树写个数据结构的猜动物小程序!!大致能实现就行!

猜动物:假设你是一个动物,程序问问题试图猜出你是哪种动物。如果程序的猜测正确,就开始另一轮游戏。如果程序不能断定你是哪种动物,你就提供一些信息给程序以使下次再玩游戏时,程序会聪明一点儿。

举例:假设你现在是一只浣熊(raccoon)。游戏开始
***** 猜动物游戏 *****
程序: 请在心里想好一种动物,让我来猜一猜
你是哺乳动物吗?'
用户:y
程序:你比猫大吗?
用户:y
程序:我猜是袋鼠,我猜的对吗
用户:Y
程序:我猜对了!
程序:继续玩吗?
用户:Y
(再完一次)
程序:你是哺乳动物吗?'
用户:Y
程序:你比猫大吗?
用户:Y
程序:我猜是袋鼠,我猜的对吗
用户:N
程序:我认输了,你是什么?
用户:浣熊
程序:请键入一个问题,便得通过此问题可以将袋鼠 和浣熊 区分开.
用户:你有大口袋吗?
程序:对于浣熊 你有大口袋吗?(Y/N)
用户:N
程序:噢,我明白了
程序:退出游戏吗?
……
这样你就给程序提供了一个以后可以区分袋鼠和浣熊的问题。
程序使用的数据存储在一棵二叉树中,每个非叶子结点包含一个问题。当程序开始后,它只知道4种动物。
根结点的问题是“是哺乳动物吗?”。
如果是,左子树的问题是“比猫大吗?”,
如果是,答案是袋鼠,否则,答案是老鼠
否则,不是哺乳动物,问“生活在水中吗?”
如果是,答案是鳟鱼,否则,答案是知更鸟
如果叶子结点包含正确的动物,一切都好。如果猜的不对,程序将从用户那里引出信息,并用这些信息改进二叉树。
主要功能函数:
(1) 建立初始状态的二叉树
(2) 猜策过程
(3) 学习过程,若猜测失败,扩展叶结点
要求是必须是自己写的 不要网上复制的 代码发我邮箱 [email protected] 若采纳 可再加分!!!!!

第1个回答  2010-12-23
已发送,请收邮件!
/****************************************************************\
* ID: lovemezhoupeng
* 利用二叉树写个数据结构的猜动物小程序
* 大致能实现就行?????? -- 实验下,可是完全实现了
* 平台是vc++6.0 C语言
* 有问题Hi我联系
\****************************************************************/

.........

//定义树的结构和栈的结构
typedef struct _BiTNode
{
char question[QUESTION_SIZE];
_BiTNode *lchild;
_BiTNode *rchild;
} BiTNode, * BiTree;

.........本回答被提问者采纳
第2个回答  2010-12-23
学过,但是忘了,不好意思了
第3个回答  2010-12-23
iouhkhkjkghffhgfkffmnbvghfjhfhgfjhjhghshdjh
第4个回答  2012-04-06
这个程序代码你还有吗,能给我一份吗,谢谢,[email protected]
相似回答