首页 > 代码库 > 文法分析-201506110151-董广枢
文法分析-201506110151-董广枢
<程序>-><声明列表>|<程序><函数>
<声明列表>-><声明>|<声明列表><声明>
<声明>-> #include < 标识符 . h >
<函数>-><修饰符><标识符><形式参数><复合语句>
<修饰符>->void | int |char |float|double
<标识符>-> <D>|<标识符><D>|<标识符><N>
<D>->a|b|...|z
<N>->0|1|2|...|9
<形式参数>-><数据类型><标识符>
<数据类型>->int|float|double|char
<复合语句>-><语句列表>|{}
<语句列表>-><语句>|<语句列表><语句>
<语句>-><条件语句>|<赋值语句>
<条件语句>-><S1>|<S2> <s3>
<S1>->if<b><条件语句> else <条件语句>
<S2>->if <b><条件语句>|<复合语句>
<b>-><逻辑表达式>
<逻辑表达式>-><标识符>|<N>|<逻辑运算符>|<标识符>|<N>
<逻辑运算符>-> >|=|>=|<=|<|!
<赋值语句>-><标识符>=<表达式>
<表达式>->表达式+T|表达式-T|T
T->F*F|T/F|F
F->(表达式)|i
表达式 -> 表达式 + T | 表达式 – T |T
T -> F*F|T/F|F
F->(表达式)|i
<s3> → <switch(变量){ switch语句块 }>
<switch语句块> → < case 常量: 可执行语句部分> | < default: 可执行语句部分> | < case 常量: 可执行语句部分> <switch语句块>
<常量> → <数字> | <去0数字> <常量>
<去0数字> → 1 | 2 | 3 |……| 8 | 9
<跳转语句> → continue ; | break ; | return ; | return 表达式; |return
文法分析-201506110151-董广枢