tree.c
来自「嵌入式汉字输入法及汉字库设计,点阵字库,精简的数据结构,高效的4键输入法」· C语言 代码 · 共 68 行
C
68 行
#include "stdio.h"
#include "string.h"
#include "type.h"
#include "pinyin.h"
//4叉树的遍历函数
//PY_NODE MyPyNode[101];
void preorder(PY_LINK * root)
{
PY_LINK *p;
char *pHanzi;
char *pPY;
unsigned short *pNode;
p=root;
//xxxxxxxxxxxxxxxxxxxxxxxxxxxx
//取值操作过程,取节点值
if(p!=NULL)
{
if(p->pPyCode!=NULL)
{
pNode = p->pPyCode;
while(*pNode !=9999)
{
pHanzi = MyPyNode[*pNode].pHanZi;
pPY = MyPyNode[*pNode].Pinyin;
pNode++;
}
}
}
//xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
if(p!=NULL)
{
preorder(p->pSon[0]);
preorder (p->pSon[1]);
preorder (p->pSon[2]);
preorder (p->pSon[3]);
}
}
void main()
{
int code,k,i,j;
char str[6]="1132";
char buff[50];
PY_LINK *pLinkHead;
pLinkHead = &LinkOne[0];
j=0;
code =0;
strcpy(buff,str);
//得到一棵子树
if(j<7)
{
for(i=0;i<=j;i++)
{
k=((int) buff[i])-0x30;
if(k<5)
{
pLinkHead = pLinkHead->pSon[k-1];
}
}
}
//遍历此子树
preorder(pLinkHead);
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?