程序->外部声明 | 程序 外部声明
外部声明->修饰符 变量名 形参
修饰符->void | int | char | float
形参->修饰符 函数名|修饰符 指针 变量名
函数名->L | IL | ID
L->a|b|c|...|z
D->0|1|2|...|9
指针->’*’ | ’*’ 指针
函数->外部声明 函数主体 | main() 函数主体|函数 外部声明 函数主体
函数主体->内部声明 语句列表 | 语句列表
内部声明->修饰符 变量名 内部声明 |修饰符 指针 变量名 | 变量名 ';' | ';'
语句列表->条件语句 | 赋值语句
赋值语句->变量名 '=' E
变量名-〉函数名
E-〉E+T| E-T|T
T->T*F|T/F|F
F->F^P|P
P->(E)|i
条件语句->条件语句1|条件语句2
条件语句1->if 条件 条件语句1 else 条件语句1 | 语句列表
条件语句2->if 条件| if 条件 条件语句1 else 条件语句2