标题:[求助]我的这棵二叉树生虫子了呢
只看楼主
baby69yy2000
Rank: 1
等 级:新手上路
帖 子:67
专家分:0
注 册:2007-4-5
 问题点数:0 回复次数:3 
[求助]我的这棵二叉树生虫子了呢
大家帮我看看,程序那错了呢?编译不能通过,好郁闷呀!我用的VC++6.0
//生成一棵二叉树,比较单词出现的次数
//c++ java Fortran basic Foxbase
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#define MAXWORD 20
struct tnode{
char *word; //指向一个单词
int count; //访问次数
struct tnode *left; //左孩子
struct tnode *right; //右孩子
};
char *GetWord() //读取单词
{
char *p;
if((p=(char*)malloc(MAXWORD+1))==NULL) {printf("Out of memory!\n");return(NULL);}
scanf("%MAXWORDs",p);
if(strlen(p)==0) return(NULL);
return p;
}
struct tnode *tree(struct tnode *p,char *w) //生成树
{
struct tnode *talloc();
int cond;
if(p==NULL)
{
p=talloc();
p->word=w;
p->count=1;
p->left=p->right=NULL;
}
else if((cond=strcmp(w,p->word))==0)
p->count++;
else if(cond<0)
p->left=tree(p->left,w);
else
p->right=tree(p->right,w);
return(p);
}
void treeprint(struct tnode *point) //打印树
{
if(point!=NULL)
{
treeprint(point->left);
printf("%4d%s\n",point->count,point->word);
treeprint(point->right);
}
}
struct tnode *talloc()
{
return((struct tnode*)malloc(sizeof(struct tnode)));
}
int main()
{
struct tnode *root,*tree();
char *t=NULL;
root=NULL;
while((t=GetWord())!=NULL)
root=tree(root,t);
treeprint(root);
return 0;
}
//error C2660: 'tree' : function does not take 2 parameters
搜索更多相关主题的帖子: include 二叉树 count java 
2007-08-22 17:52
雨中飞燕
Rank: 3Rank: 3
等 级:禁止访问
威 望:8
帖 子:2200
专家分:0
注 册:2007-8-9
得分:0 
struct tnode *tree();
你声明了这个,却使用下面这个:
tree(root,t);
2007-08-22 18:21
baby69yy2000
Rank: 1
等 级:新手上路
帖 子:67
专家分:0
注 册:2007-4-5
得分:0 
回复:(雨中飞燕)struct tnode *tree();你声明了这个...
int main()
{
struct tnode *root;
char *t=NULL;
root=NULL;
while((t=GetWord())!=NULL)
root=tree(root,t);
treeprint(root);
return 0;
}
啊,声明写错了
这次编译能通过了
可是当我输入一个单词之后,回车
狂吃我内存呢?

2007-08-22 18:58
baby69yy2000
Rank: 1
等 级:新手上路
帖 子:67
专家分:0
注 册:2007-4-5
得分:0 
我好象写了个死循环呢
程序那错了呢?编译通过了,可是,当我输入一个单词之后,回车,再输入单词,狂吃我内存呢?好郁闷呀!

[此贴子已经被作者于2007-8-22 19:40:43编辑过]


2007-08-22 19:39



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-164659-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.423338 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved