判断LL1型文法实验报告-A版 一、实验目的 首先能让用户输入一个文法,然后让计算机自动判断是否是一个 LL(1)文法,通过实验教学, 加深学生对所学的关于编译的理论知识的理解,增强学生对所学知识的综合应用能力,并通 过实践达到对所学的知识进行验证。 二、实验环境 供 Windows 系统的PC 机,可用C+/C#/Java 等编程工具编写 三、实验内容 1、让计算机接受一个文法,示例如: GS 为: SAB SbC A Ab B BaD CAD Cb DaS Dc 1. 2、编程实现对上述文法是否是LL(1)文法的判断,是则给出肯定回答,否则给出否 定回答。 2. 判别是否是 LL(1)文法 实验流程图如下: 以链表或数组等数 据结构保存文法. 求出能推出 的非 终结符. 计算 FIRST 集,FOLLOW 集和 SELECT 集 是 SELECT(A )S 输出肯定 ELECT(A )= ? 回答 否 输出否定回答 四、概要设计 (1)、LL(1)文法的定义 LL(1)分析法属于确定的自顶向下分析方法。LL