📄 expr.h
字号:
#include"BiTree.h"
status ReadExpr(BiTree &T)
{
printf("请输入先序表达式:\n");
scanf("%s",a);
if(Creat(T)) return 1;
}
void WriteExpr(BiTree T)
{
int r=0;int l=0;
if (T)
{
if(T->lchild)
{
if (Sign(T->lchild->data)&&
(Precede(T->data,T->lchild->data)))
{
l=1;printf("(");
}
WriteExpr(T->lchild);
if(l) printf(")");
}
if(T->data=='#') printf("%d",T->nu);
else printf("%c",T->data);
if(T->rchild)
{
if (Sign(T->rchild->data)&&(Precede(T->data,T->rchild->data)))
{
r=1;
printf("(");
}
WriteExpr(T->rchild);
if (r) printf(")");
}
}
}
status Assign(BiTree &T)
{
char a;
if(T){
if(Letter(T->data))
{printf("请给%C赋值:\n",T->data);
fflush(stdin);
a=getchar();
T->data='#';
T->nu=a-48;
return 1;
}
else
{
Assign(T->lchild);
Assign(T->rchild);
}
return 1;
}
return 1;
}
void Change(BiTree &T)
{
if(T!=NULL){
if(Num(T->data)){T->nu=T->data-48;T->data='#';}
Change(T->lchild);Change(T->rchild);}
}
status Value(BiTree &T)
{
int i;
for(i=0;i<7;i++)
{
Caclue(T);
}
printf("%d",T->nu);return 1;
}
BiTree CompoundExpr(char P,BiTree T1,BiTree T2)
{
BiTree T;
if (!(T=(BiTNode *)malloc(sizeof (BiTNode)))) return 0;
T->data=P;
T->lchild=T1;T->rchild=T2;
return T;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -