简化版C语言文法

<程序> →  <外部声明> | <程序外部声明>

<外部声明> → <函数定义> | <定义>

<函数定义> → <函数声明> <函数体>

<函数声明> → <函数返回类型> <函数头>

<函数返回类型> → <返回类型> | <返回类型> <指针>

<字母> → a | b | c |……| x | y | z

<数字> → 0 | 1|……| 8 | 9

<声明语句> → <标识符类型> <标识符> ; | <标识符类型> <标识符> ; <声明语句>

<可执行语句部分> → <语句> | <可执行语句部分> <语句>

<跳转语句> → continue ; | break ; | return ; | return 表达式; |return

<表达式语句> → <赋值表达式> | <逻辑表达式> | <算术表达式 E>

<赋值表达式> → <变量> = <算术表达式>

<逻辑表达式> → (<表达式> | <数字> ) <逻辑运算符> (<表达式> | <数字>)

E → E + T | E – T | T

T → T * F| T / F | F

F  F ↑ P | P

P (E) | <常量> | <标识符>

<逻辑运算符> → > | < | != | <= | >= | = = | ? | : | ! | || | &&

原文地址:https://www.cnblogs.com/wha000/p/6009042.html