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

外部声明→<功能定义>|<声明>

功能定义→<声明复合语句的类型>

类型→<VOID| CHAR| INT| FLOAT>

说明符→<指针直接说明符>|<直接说明符>

指针→<*>|<*指针>

直接说明符→<标识符>|<直接说明符’[‘ ‘]’ >|<直接说明符’[’ 常数表达式 ’]’>|<标识符'(' 参数列表 ')'

>|<标识符'(' ')'|直接说明‘,’标识符表

标识符表→标识符 |标识符列表

常数表

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

外部声明→<功能定义>|<声明>

功能定义→<声明复合语句的类型>

类型→<VOID| CHAR| INT| FLOAT>

说明符→<指针直接说明符>|<直接说明符>

指针→<*>|<*指针>

直接说明符→<标识符>|<直接说明符’[‘ ‘]’ >|<直接说明符’[’ 常数表达式 ’]’>|<标识符'(' 参数列表 ')'

>|<标识符'(' ')'|直接说明‘,’标识符表

标识符表→标识符 |标识符列表

常数表达式→条件表达式

参数表→参数声明|参数表

参数声明→标识符的声明符说明

复合语句→ '{' '}'| '{' 声明列表'}'| '{' <声明列表><语句表> '}'

声明→声明符|初始化声明符

初始化声明符→声明符|声明符的初始设定式

初始设定式→赋值表达式| '{' 初始设定式列表 '}'

语句→选择语句|循环语句|跳转语句|表达语句|条件语句

表达语句→;|表达式;

选择语句→if(表达式)语句| if(表达式)语句else语句

循环语句→while(表达式)语句|for(表达式;表达式;表达式)语句|

跳转语句→| CONTINUE ';'| BREAK ';'| RETURN ';'| 返回表达式';'

达式→条件表达式

参数表→参数声明|参数表

参数声明→标识符的声明符说明

复合语句→ '{' '}'| '{' 声明列表'}'| '{' <声明列表><语句表> '}'

声明→声明符|初始化声明符

初始化声明符→声明符|声明符的初始设定式

初始设定式→赋值表达式| '{' 初始设定式列表 '}'

语句→选择语句|循环语句|跳转语句|表达语句|条件语句

表达语句→;|表达式;

选择语句→if(表达式)语句| if(表达式)语句else语句

循环语句→while(表达式)语句|for(表达式;表达式;表达式)语句|

跳转语句→| CONTINUE ';'| BREAK ';'| RETURN ';'| 返回表达式';'

最新文章

  1. C语言static
  2. android 开发学习笔记 (一)
  3. 【BZOJ1001】狼抓兔子
  4. 零散知识记录-Jira的安装
  5. 【风马一族_git_github】git的工作流程
  6. 1888. Pilot Work Experience(dfs+bfs)
  7. 怎样在WINDOWS下面编译LIBCURL
  8. 一直想测试的NGINX变量输出,最于有办法了。
  9. 201521123036 《Java程序设计》第3周学习总结
  10. 关于ajax 进行post提交 json数据到controller
  11. android studio gradle 打jar 包 (混淆+第三方库包)
  12. Android系统API综述
  13. JS笔记汇总
  14. shell脚本实例-实现监控tcp的链接状态另一种方式批量创建用户
  15. react-navigation实现页面框架(转载)
  16. [转]极不和谐的 fork 多线程程序
  17. centos 为OPENJDK配置JAVA_HOME环境变量,安装MAVEN
  18. iframe中子页面父页面里函数互调
  19. Java源码更改的方式
  20. Javascript中的数据类型知多少

热门文章

  1. git向码云上提交项目
  2. Synchronized关键字与多线程
  3. kaggle之员工离职分析
  4. springcloud 笔记-服务注册中心
  5. node.js 监听message事件 message字符串丢失信息
  6. # 2017-2018-1 20155337《信息安全系统设计基础》第5周学习总结+mybash
  7. lamp环境搭建(centos6.9+apache2.4+mysql5.7+php7.1)
  8. HBase——使用Put迁移MySql数据到Hbase
  9. Connect C# to MySQL
  10. 三、Django安装和流程