<程序>→<外部声明>|<程序><外部声明>
<外部声明>→<函数定义>|<声明>
<函数定义>→<数据类型><声明符><复合语句>
<数据类型>→void|char|int|float
<声明符>→<指针><直接声明符>|<直接声明符>
<指针>→'*'|'*'<指针>
<直接声明符>→<标识符>|<直接声明符>'['']'|<直接声明符>'['<普通表达式>']'|<标识符>'('<参数列表>')'>|<标识符>'('')'|<直接声明符>','<标识符列表>
<标识符列表>→<标识符>|<标识符列表>','<标识符>
<一般表达式>→<条件表达式>
<参数列表>→<参数声明>|<参数列表>','<参数声明>
<参数声明>→<声明类型><标识符>
<复合语句>→'{''}'|'{'<语句列表>'}'|'{'<声明列表><语句列表>'}'
<声明列表>→<声明>|<声明列表><声明>
<声明>→<初始化声明符>|<初始化声明符列表>','<初始化声明符>
<初始化声明符>→<声明符>|<声明符>'='<初始化>
<初始化>→<赋值表达式>|'{'<初始化列表>'}'|'{'<初始化列表>',''}'
<初始化列表>→<初始化>|<初始化列表>','<初始化>
<语句列表>→<语句>|<语句列表><语句>
<语句>→<复合语句>|<表达式语句>|<选择语句>|<循环语句>|<跳转语句>
<表达式语句>→';'|<表达式>';'
<选择语句>→if'('<表达式>')'<语句>|if'('<表达式>')'<语句>else<语句>
<循环语句>→while'('<表达式>')'<语句>|for'('<表达式语句><表达式语句>')'<语句>|for'('<表达式语句><表达式语句><表达式>')'<语句>
<跳转语句>→continue';'|break';'|return';'|return<表达式>';'
<表达式>→<赋值表达式>|<表达式>','<赋值表达式>
<赋值表达式>→<条件表达式>|<一元表达式><赋值运算符><赋值表达式>
<条件表达式>→<逻辑或表达式>|<逻辑或表达式>'?'<表达式>':'<条件表达式>
<逻辑或表达式>→<逻辑与表达式>|<逻辑或表达式><或运算><逻辑与表达式>
<逻辑与表达式>→<或表达式>|<逻辑与表达式><与运算><或表达式>
<或表达式>→<异或表达式>|<或表达式>'|'<异或表达式>
<异或表达式>→<与表达式>|<异或表达式>'^'<与表达式>
<与表达式>→<等式>|<与表达式>'&'<等式>

1014 C语言文法定义的更多相关文章

  1. 1014 C语言文法定义与C程序的推导过程 程序:冒泡算法C程序(语法树)

    阅读并理解提供给大家的C语言文法文件. 参考该文件写出一个自己好理解版的现实版的完整版的C语言文法. 给出一段C程序,画出用上述文法产生这段C程序的完整语法树. 程序:冒泡算法C程序 点此文字查看原图 ...

  2. 1014 C语言文法定义与C程序的推导过程

    <程序> -> <外部声明> | <程序> <外部声明> <外部声明> -> <函数定义> | <声明> ...

  3. 1106 1014 C语言文法定义与C程序的推导过程 冒泡程序语法树

  4. 1029 C语言文法定义与C程序的推导过程

    1 阅读并理解提供给大家的C语言文法文件. 2 参考该文件写出一个自己好理解版的现实版的完整版的C语言文法. 3 给出一段C程序,写出用上述文法产生这段C程序的推导过程. program → exte ...

  5. 1014 我的C语言文法定义与C程序推导过程

    程序> -> <外部声明> | <程序> <外部声明> <外部声明> -> <函数定义> | <声明> < ...

  6. 1014 C语言文法

    <程序> -> <外部声明> | <程序> <外部声明> <外部声明> -> <函数定义> | <声明> ...

  7. C语言文法定义及C程序的推导过程

    program à external_declaration | program external_declaration <程序> ->  <外部声明> |  < ...

  8. C语言文法定义与C程序的推导过程

    program à external_declaration | program external_declaration <程序> ->  <外部声明> |  < ...

  9. 1029c语言文法定义与c程序的推导过程

    program → external_declaration | program external_declaration <源程序>→ <外部声明> | <源程序> ...

随机推荐

  1. Echarts插件

    <%@ page contentType="text/html;charset=UTF-8" language="java" %><% Str ...

  2. WPF的单位 屏幕 分辨率

    原文:WPF的单位 屏幕 分辨率 WPF程序中的单位是与设备无关的单位,每个单位是1/96英寸,如果电脑的DPI设置为96(每个英寸96个像素),那么此时每个WPF单位对应一个像素,不过如果电脑的DP ...

  3. sqlplus 中 各列对齐设定

    设置列标题的对齐方式 JUSTFIFY  {L[EFT]|C[ENTER]|R[IGHT]} SQL> col ename justify center SQL> /

  4. django学习笔记(1)

    Django 特点 强大的数据库功能     用python的类继承,几行代码就可以拥有一个丰富,动态的数据库操作接口(API),如果需要你也能执行SQL语句 自带的强大的后台功能     几行简单的 ...

  5. scrapy框架爬取小说信息

    1.爬取目标网站:http://www.zhaoxiaoshuo.com/all.php?c=0&o=0&s=0&f=2&l=0&page=1 2.爬取目标网站 ...

  6. taglib报错The content of element type "taglib" must match "(tlib-version,...)

    <?xml version="1.0" encoding="UTF-8"?><!DOCTYPE taglib PUBLIC "-// ...

  7. Security1:登录和用户

    授予权限的思路,可以用一句话来概括,那就是:授予 Principal 操作 Securable 的 Permission,在多数文档中,把 Principal 翻译为安全主体,Securable翻译为 ...

  8. Java JDK下载安装及配置

    下载JDK(Java Development Kit),所有的Java程序都依赖他. 下载地址 www.oracle.com  直接下载 安装JDK如图(傻瓜式安装,下一步下一步):   安装完成后 ...

  9. WebGL实现sprite精灵效果的GUI控件

    threejs已经有了sprite插件,这就方便了three的用户,直接可以使用threejs的sprite插件来制作GUI模型.sprite插件是阿里的lasoy老师改造过的,这个很厉害,要学习一哈 ...

  10. 分享一篇IBN(Intent-based networking)调研报告

    IBN调研报告 背景 SDN(Software-defined network):最大特点在于具有松耦合的控制平面与数据平面.支持集中化的网络状态控制.实现底层网络设施对上层应用的透明.具有灵活的软件 ...