分页:
上一页 1 2 3 4 5 6 7 [8] 9 10 下一页
*word = '\0';
return 1;
}
void binary_tree(BNODE **t, char *word)
{ BNODE *ptr, *p; int compres;
p = NULL; (1) ;
while (ptr) /* 寻找插入位置 */
{ compres=strcmp(word, (2) ); /* 保存当前比较结果 */
if (!compres)
{ (3) ; return; }
else
{ (4) ;
ptr = compres>0 ? ptr->right : ptr->left;
}
}
ptr = (BNODE *)malloc(sizeof(BNODE));
ptr->left = ptr->right = NULL;
ptr->word = (char *)malloc(strlen(word)+1);
strcpy(ptr->word, word);
ptr->count = 1;
if (p == NULL)
(5) ;
else if (compres > 0)
p->right = ptr;
else
p->left = ptr;
}
void midorder(FILE *fpt, BNODE *t)
{ if ( t == NULL )
return;
midorder(fpt, t->left);
fprintf(fpt, "%s %d\n", t->word, t->count);
midorder(fpt, t->right);
}
void main()
{ FILE *fpt; char word[40];
BNODE *root=NULL;
if ((fpt=fopen(INF, "r")) == NULL)
{ printf("Can't open file %s\n", INF);
return;
}
while(getword(fpt, word) == 1)
binary_tree( &root, word );
fclose(fpt);
fpt = fopen(OUTF, "w");
if (fpt == NULL)
分页:
上一页 1 2 3 4 5 6 7 [8] 9 10 下一页