1. <程式>→<外部聲明>|<程式><外部聲明>
2. <外部聲明>→<函數定義>|<聲明>
3. <函數定義>→<類型說明><聲明符><複合語句>
4. <類型說明>→ <VOID>|< CHAR>|< INT>|< FLOAT>
5. <聲明符> →<指針><直接聲明符>|<直接聲明符>
6. <指針>→<*>|<*><指針>
7. <直接聲明符>→<辨別符>|<直接聲明符><[><]>|<直接聲明符><[><常數表達><]>|<辨別符><(><)>|<直接聲明符><,><确定清單>
8. <确定清單>→<辨別符>|<确定清單><,><辨別符>
9. <常數表達>→<條件表達>
10. <參數清單>→<參數聲明>|<參數清單><,><參數聲明>
11. <參數聲明>→<聲明說明符><辨別符>
12. <複合聲明> →<{><}>|<{><聲明清單><}>|<{><聲明清單><聲明清單><}>
13. <聲明清單>→<聲明>|<聲明清單><聲明>
14. <聲明>→<初始化聲明>|<初始化聲明清單><,><初始化聲明>
15. <初始化聲明>→<聲明>|<聲明><=><初始化>
16. <初始化>→<配置設定表達>|<{><初始化清單><}>|<{><初始化清單><,><}>
17. <初始化清單>→<初始化>|<初始化清單><,><初始化>
18. <聲明清單>→<聲明>|<聲明清單><聲明>
19. <聲明>→<複合聲明>|<表達聲明>|<選擇聲明>|<疊代聲明>|<跳躍聲明>
20. <表達聲明>→<;>|<表達><;>
21. <條件語句>:<IF‘(‘表達式”)語句> |< IF‘(‘ 表達式 ‘)‘語句 >< 條件語句>
22. <循環語句>→ <WHILE ‘(‘ 表達式‘)‘ 語句> |< FOR ‘(‘ 表達式語句 表達式語句 ‘)‘ 語句> | <FOR ‘(‘ 表達式語句 表達式語句 表達式‘)‘語句>
23. <跳轉語句 >|< CONTINUE ‘;‘> |< BREAK ‘;‘> | < RETURN ‘;‘> |< RETURN 表達式 ‘;‘>
24. <表達式>:<指派表達式> |< 表達式> ‘,‘< 指派表達式>
25. <指派表達式>→<條件表達式> |< 一進制表達式指派運算符><指派表達式>
26. <條件表達式>→<邏輯或表達> | <邏輯或表達>‘?‘ <表達式 >‘:‘<條件表達式>
27. <邏輯或表達>→<邏輯與表達> |< 邏輯或表達> <或運算邏輯表達式>
28. <邏輯與表達>:<或表達式 >| <邏輯表達式>和<運算或表達式>
29. <或運算表達式>→<異或表達式> |< 或運算表達式 >‘|‘< 異或表達式>
30. <異或表達式>:<與表達式>|<異或表達式>‘^‘<與表達式>
31. <與表達式>:<相等表達式> |< 與表達式>‘&‘<相等表達式>
32. <相等表達式>:<關系表達式> |< 相等表達式等于運算關系表達式> |< 相等表達式不等于運算關系表達式>
33. <關系表達式>:<移位表達式> | <關系表達式‘<‘移位表達式> | <關系表達式‘>‘移位表達式 > | <關系表達式小于等于運算移位表達式> | <關系表達式大于等于運算移位表達式>
34. <移位表達式>:<加法表達式> | <移位表達式左運算加法表達式> |< 移位表達式右運算加法表達式>
35. <加法表達式>:<乘法表達式> |< 加法表達式‘+‘乘法表達式> |< 加法表達式‘-‘乘法表達式>
36. <乘法表達式>:<強制轉換表達式> |< 乘法表達式‘*‘強制轉換表達式> |< 乘法表達式‘/‘強制轉換表達式> |< 乘法表達式‘%‘強制轉換表達式>
37. <強制轉換表達式>:<一進制表達式> |< ‘(‘ 類型名稱 ‘)‘強制轉換表達式>
38. <一進制表達式>:<字尾表達式> |< INC運算一進制表達式> |< DEC運算一進制表達式> |< 一進制運算符将表達式 >| <結構體變量的一進制表達式> | <結構體變量的‘(‘ 類型名稱 ‘)‘>
39. <字尾表達式>:<基本表達式>|<字尾表達式‘[‘表達式‘]‘>|<字尾表達式‘(‘ ‘)>|<字尾表達式 ‘(‘參數表達式清單‘)‘>|<字尾表達式‘.‘ 辨別符>|<字尾表達式指針運算辨別符 >| <字尾表達式INC運算 > |< 字尾表達式DEC運算>
40. <基本表達式→辨別符> | <常量> | <字元串常量> | < ‘(‘表達式‘)‘>
41. <參數表達式清單>: <指派表達式> | <參數表達式清單‘,‘指派表達式>
42. <一進制運算符>: <‘&‘> | <‘*‘ > | <‘+‘ >| < ‘-‘ > | < ‘~‘ > | < ‘!‘>
43. <指派運算符>→<‘=‘ > | <乘法配置設定> | <DIV配置設定> | <MOD配置設定> | <加法配置設定 > | <SUB配置設定 > | <左配置設定> | <右配置設定> | <與配置設定 >| <異或配置設定> | <或配置設定>
44. <存儲類說明符>→<定義類型> | <外部變量 >| <靜态 > | <自動> | <寄存器 >
45. <結構或聯合說明符>:<結構或聯合辨別符‘{‘結構體聲明清單‘}‘ > |< 結構或聯合‘{‘結構體聲明清單‘}‘ > | <結構或聯合辨別符>
46. <結構或聯合>:<結構體> | <聯合>
47. <結構體聲明清單>:<結構體聲明> | <結構體聲明結構體聲明清單>
48. <結構體聲明>:<說明符限定符清單結構說明符‘;‘說明符>→<類型說明符說明符限定符清單 >| <類型說明符 > | <類型限定符說明符限定符清單 >| <類型限定符>
49. <結構說明符清單>→<結構體聲明> | <結構說明符清單‘,‘結構體聲明>
50. <結構體聲明>→:<聲明> | < ‘:‘常量表達式 >| <聲明‘:‘常量表達式>
51. <枚舉聲明>→<枚舉‘{‘枚舉器清單‘}‘ > | <枚舉辨別符‘{‘枚舉器清單‘}‘ > | <枚舉辨別符>
52. <枚舉器清單>→<枚舉器> | <枚舉器清單‘,‘枚舉器>
53. <枚舉器>→<辨別符> | <辨別符‘=‘常量表達式>
54. <類型限定符>→<常量> | <易失的>
55. <類型限定符清單>→<類型限定符> | <類型限定符清單><類型限定符>
56. <參數類型清單>→<參數清單> | <參數清單‘,‘省略符号>
57. <參數清單>→:<聲明參數> |< 參數清單‘,‘聲明參數>
58. <類型名稱>→<限定說明符清單> | <限定符抽象說明符清單>
59. <抽象說明符>→<指針> | <直接抽象說明符> | <指針直接抽象說明符>
60. <直接抽象說明符>→ <‘(‘ 抽象說明符 ‘)‘ >| < ‘[‘ ‘]‘ | ‘[‘ 常量表達式‘]‘ >| <直接抽象說明符‘[‘ ‘]‘ >| <直接抽象說明符‘[‘ 常量表達式 ‘]‘ > | < ‘(‘ ‘)‘ >|< ‘(‘參數類型清單‘)‘ >|< 直接抽象說明符‘(‘ ‘)‘ >| <直接抽象說明符‘(‘參數類型清單‘)‘>
61. <有标号語句>→<辨別符‘:‘語句> | <CASE常量表達式‘:‘語句 > | < DEFAULT‘:‘語句>