Identifier list → identifiers | Identifier list, identifier
Identifier → underscore identifier | letter Identifier | number | letter | underline
Constant-expression → conditional-expression
parameter list → parameter declaration | parameter list, parameter declaration
parameter declaration → Descriptor Declaration Identifier
Statement List → statements | Statement List statement
Statement → compound Statement | Expression Statements | SELECT statement | Looping statements
Compound Statement →{} | {Statement List} | {Declaring list statement list}
Declaration List → Declaration | Declaration List Declaration
Declaration → Initialization Declaration | Initialize declaration list, initialize declaration
Declaration of initialization → Declaration | Declaration = Initialization Program
Initialization program → expression | {initialization Program List} | {Initialization program list,}
Initialization program list → initialization Program | Initialize the program list, initialize the program
Expression → assignment expression | An expression, an assignment expression
assignment expression → conditional expression | unary-expression assignment operator assignment expression
conditional expression → logical ' or ' expression | Logical ' or ' expression? Expression: Conditional expression
Logical ' or ' expression → logical ' and ' expression | Logical ' or ' expression ' or ' op-logical ' and ' expression
Logical ' and ' expression → logical ' or ' expression | Logical ' and ' expression ' with ' op-logical ' or ' expression
unary expression → plus one unary expression | Minus one operation unary expression | unary operator cast expression
Cast expression → unary expression | (type name) cast expression
Assignment Operator →= | Multiply Assign values | Division Assignment | Assignment of residual value | Addition Assignment | Subtraction Assignment
Basic Expressions → identifiers | Constants | string | (expression)
SELECT statement →if (expression) statement | IF (expression) statement-ELSE statement
addition expression → multiplication expression | Addition expression + multiplication expression | Addition expression-multiplication expression
multiplication expression → cast expression | Multiplication expression * Cast expression | Multiplication expression/cast expression | Multiplication expression% cast expression
Simple C language Grammar description