实验二——程序文法

<程序>-><声明>|<程序><函数>

<声明>-> #include < 标识符 . h >

<函数>-><修饰符><标识符><形式参数><复合语句>

<修饰符>->void | int |char |float|double

<标识符>-> <D>|<标识符><D>|<标识符><N>

<D>     ->   A | B | C | D | ….. | Z
 
<N>     ->   1|2|3|4|…….|9
 
<形参>  ->   <数据类型> <标识符>
 
<数据类型>->  int | float | double | char
 
<复合语句>->  <语句>|<复合语句> <语句>
 
<语句>  ->   <条件语句>|<赋值语句>
 
<条件语句> -> <s1>|<s2>
 
<s1>    ->   if <b> <条件语句> else <条件语句>
 
<s2>    ->   if <b> <条件语句> | <复合语句>
 
<b>     ->   <逻辑表达式>
 
<逻辑表达式> -> <标识符> |<N> | <逻辑运算符> | <标识符> | <N>
 
<逻辑运算符> ->  >|<|=|>=|<=|!
 
<赋值语句> -> <标识符> = <表达式>
 
<表达式> -> 表达式 + T | 表达式 – T | T
 
T      ->   F*F | T/F | F
 
F      ->   <表达式>| i

 

posted on 2016-10-28 20:40  163-王晓峰  阅读(114)  评论(0编辑  收藏  举报