144+粱肇森

(1)<程序>::=开始<文件头>|<函数>结束

(2)<文件头>::=<库函数>

(3)<函数>::=<库函数>|<用户自定义函数>|<函数主体>

(4)<库函数>::=<#include<stdio.h>>|<#define>....

(5)<用户自定义函数>::=< yizhi>|<>....

(6)<函数主体>::=<语句串><选择结构>

(7)<语句串>::=<循环语句>|<数组>|<指针>|<数据类型>|<数字>|<结构体>|<选择结构>|<变量>|<常量>|<运算符>|<符号>|<关键字>|<字符>

(8)<选择结构>::=<单分支结构>|<分支结构>|<多分支结构>|<嵌套结构>

(9)<循环语句>::=<for>|<switch>|<do while>|<while>

(10)<数组>::=<数值数组>|<字符数组>

(11)<数值数组>::=<一维数组>|<二维数组>

(12)<字符数组>::=<字符串>|<字符串数组>

(13)<指针>::=<函数指针>|<数组指针> | <字符串指针>| <指向指针的指针>

(14)<数据类型>::=<整型>|<实型> | <字符型>| <无返回型>

(15)<数字>::=<0,1,2,3,4,5,6,7,8,9...>

(16)<结构体>::=<结构体数组>| <结构体指针>| <链表>

(17)<变量>::=<整型|<实型>|<字符型>

(18)<常量>::=<整型|<实型>|<字符型>

(19)<运算符>::=<单目运算符>|<双目运算符>|<三目运算符>|<逗号运算符>

(20)单目运算符::=<逻辑非运算符【!】>|<自增自减运算符【++,--】>|<负号运算符【-】>|<类型转换运算符【(类型)】>|<指针运算符【*】>|<取地址运算符【&】>|<长度运算符
【sizeof】>

(21)双目运算符::=<算术运算符【+,-,*,/】>|<关系运算符【==,!=,>,<,>=,<=】>|<逻辑运算符【&&,||】>|<赋值运算符【=,+=,-=,*=,/=,%=】>|<位运算符【&,^,|,<<,>>】>

(22)逗号运算符::=<【,】>

(23)<三目运算符>::=<【?:】>

(24)<符号>::=<, . ; : ? % & [ ] { } ""...>

(25)<关键字>::=<begin,end,if,else,do,while,var,auto,break,char,case,int,struct,switch,return,float,static,union,unsigned...>

(26)<字符>::=<abc...xyz,ABC...XYZ>

posted @ 2016-10-28 20:32  144+粱肇森  阅读(109)  评论(0编辑  收藏  举报