标签:
/*G[E]:
E->E+T|E-T|T
T->T*F|T/F|F
F->(E)|i
左递归消除
E->TE‘
E‘->+TE‘|-TE‘|ε
T->FT‘
T‘->*FT‘|/FT‘|ε
F->(E)|i
*/
main()
{
scaner();
E();
if(sym==‘$‘)printf("success");else printf("fail");
}
E()
{T();E‘();}
E‘()
{
if(sym==‘+‘||sym==‘-‘)scaner();
}
T()
{
F();T‘();
}
F()
{
if(sym==‘i‘)scaner();
else if(sym==‘(‘)
{scaner();E();
if(sym==‘)‘)scaner();else error();
}
else error();
}
T‘()
{
}
标签:
原文地址:http://www.cnblogs.com/alfredzhu/p/5051860.html