2022年图书管理系统数据库.pdf
图书管理系统数据库数据库原理与应用教程实验报告数据库分析与设计-图书管理系统一、需求说明要实现一个简化的图书管理系统,在此图书管理系统中只涉及学生信息、借阅信息与管理者信息的管理。 此系统要求能够记住书籍的基本信息、学生的信息与管理者的信息。该系统的业务要求为: 一名学生可以在不同的日期多次借阅同一本书。一名学生可以同时借阅多本不同的图书。一本书可以在不同的时间借给不同的学生。一名学生不能在同一天对同一本书借阅多次。一名管理员可以同时管理多本图书。该系统的基本信息包括 : 学生信息 :姓名,学号,学院,专业,年级。图书信息 :图书名称 ,图书编号 ,出版社名称 ,出版日期 ,作者,就是否可借。管理员信息 :管理员姓名 ,管理员编号。除上述要求外 ,该系统还需产生如下报表: 学生借阅图书信息表 :学号,图书编号 ,图书名称 ,借阅日期 ,应归还日期。图书管理表 :管理日期 ,管理员编号 ,管理员姓名。二、数据库结构设计2、1 概念结构设计概念结构设计就是根据需求分析的结果产生概念结构设计的E-R 模型。由于这个系统比较简单 ,因此这里采用自顶向下的设计方法。自顶向下设计的关键就是首先要确定系统的核心活动。 所谓核心活动就就是系统中的其她活动都要围绕这个活动展开或与此活动密切相关。确定了核心活动之后,系统就有了可扩展的余地。对于这个图书管理系统,其核心活动就是图书 ,学生与图书之间就是通过学生借阅图书发生联系的,管理员与图书之间就是通过管理员管理图书发生联系的。至此 ,此系统包含的实体有 : 精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 1 页,共 19 页 - - - - - - - - - - 图书管理系统数据库图书:用于描述课程的基本信息 ,用图书编号标识。学生:用于描述学生的基本信息 ,用学号标识。管理员 :用于描述管理员的基本信息,用管理员编号标识。由于一名学生可以借阅多本图书,并且一本书可以在不同时间借给不同的学生。因此 ,学生与图书之间就是多对多的联系。又由于一本图书可以由多名管理员管理 ,而且一名管理员可以管理多本图书。因此,管理员与图书之间也就是多对多的联系。其基本 E-R 模型如图 1 所示: m n m n 根据需求分析的结果 ,该 E-R 模型模型中个实体所包含的属性如下: 学生:姓名,学号,学院,专业,年级。图书:图书名称 ,图书编号 ,出版社名称 ,出版日期 ,作者,就是否可借。管理员 :管理员姓名 ,管理员编号。各联系本身应具有的属性为: 借阅:学号,图书编号 ,图书名称 ,借阅日期 ,应归还日期。管理:管理日期 ,管理员编号 ,管理员姓名。2、2 逻辑结果设计这个 E-R 模型转换出的关系模式如下,其中主码用下划线标识 : 学生(学号,姓名,学院,专业,年级) 图书(图书编号 ,图书名称 ,出版社名称 ,出版日期 ,作者,就是否可借 ) 管理员 (管理员编号 ,管理员姓名 ) 借阅(学号,图书标号 ,图书名称 ,借阅日期 ,应归还日期 ),其中图书编号为引用“图书”关系模式的外码;学号为引用“学生”关系模式的外码。管理(管理日期 ,管理员编号 ,管理员姓名 ),其中管理员编号为引用“管理员”关系模式的外码。(1)确定各管就是模式就是否属于第三范式经过分析发现 ,“学生” 、 “图书” 、 “管理员”、 “借阅”与“管理” 5 个关系模式中,都不存在部分依赖与传递依赖关系,因此都属于第三范式。(2)确定信息的完整性学生借阅图书管理管理员精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 2 页,共 19 页 - - - - - - - - - - 图书管理系统数据库该教学管理系统要产生 :学生借阅图书信息、图书管理2 个报表 ,分别分析如下: “学生借阅图书信息表”包括学号、图书编号、图书名称、借阅日期、应归还日期。其中“学号”可由“学生”关系模式得到 , “图书编号”、 “图书名称”、“借阅日期”、 “应归还日期”可由“借阅”关系模式得到,因此可以满足学生借阅图书信息表的要求。“图书管理表” 包括管理日期、 管理员编号、 管理员姓名。 其中“管理日期”可由“管理”关系模式得到 ,“管理员编号” ,“管理员姓名”可由“管理员”关系模式得到。因此,所有关系模式满足所有报表的信息要求。至此,关系模式设计完毕。下面给出创建这些关系表的SQL 语句示例 ,其中的数据类型可根据实际情况调整,为方便理解 ,表名、列名均用中文表示。CREATE TABLE 学生表 ( 学号char(10) PRIMARY KEY , 姓名char(10) NOT NULL , 学院char(20) NOT NULL , 专业char(20) NOT NULL , 年级char(8) NOT NULL ) CREATE TABLE 图书表 ( 图书编号char(20) PRIMARY KEY , 图书名称char(20) NOT NULL , 出版社名称char(20) NOT NULL , 出版日期datetime NOT NULL , 作者char(10) NOT NULL ) CREATE TABLE 管理员表 ( 管理员编号char(10) PRIMARY KEY , 管理员姓名char(10) NOT NULL ) CREATE TABLE 借阅表 ( 学号char(10) NOT NULL , 姓名char(10) NOT NULL , 图书编号char(20) NOT NULL , 图书名称char(20) NOT NULL , 借阅日期datetime NOT NULL , 精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 3 页,共 19 页 - - - - - - - - - - 图书管理系统数据库应归还日期datetime NOT NULL , PRIMARY KEY ( 学号,图书编号 ), FOREIGN KEY ( 学号) REFERENCES 学生表(学号), FOREIGN KEY ( 图书编号 ) REFERENCES 图书表 (图书编号 ) ) CREATE TABLE 管理表 ( 管理日期datetime NOT NULL , 管理员编号char(10) NOT NULL , 管理员姓名char(10) NOT NULL , PRIMARY KEY ( 管理日期 ,管理员编号 ), FOREIGN KEY ( 管理员编号 ) REFERENCES 管理员表(管理员编号 ) ) 2、2、2 设计外模式(1)学生借阅图书信息表我们将该报表直接用查询语句的形式生成,将动态查询条件作为查询语句中的数据筛选条件。例如,假设要为大三学生生成借阅图书情况的报表,则语句如下 : SELECT 学号,姓名,图书名称FROM 借阅表 WHERE 年级 = 大三(2)图书管理表该表可以查询出在哪一天由哪位管理员借出了哪些图书,因此,直接用查询语句生成。SELECT 图书编号 ,图书名称 ,管理日期 ,管理员编号 ,管理员姓名FROM 借阅表 JOIN 管理表 ON 借阅表、借阅日期= 管理表、管理日期三、 数据库行为设计对于数据库应用系统来说 ,最常用的功能就是安全控制功能,数据的增、删、改、查功能以及生成报表的功能。本系统也应包括这些基本的操作。3、1 安全控件任何数据库应用系统都需要安全控件功能,这个图书管理系统也不例外。假设将系统的用户分为如下几类: 图书馆系统管理人员 :具有系统的全部操作权限。教务部门 :具有对学生基本信息、图书信息与管理员信息的维护权。学生:具有对图书信息的查询权。精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 4 页,共 19 页 - - - - - - - - - - 图书管理系统数据库在实现时 ,可将每一类用户定义为一个角色,这样在授权时只需对角色授权,而无需对每个具体的用户授权。3、2 数据操作功能数据操作功能包括对这些数据的录入、删除、修改功能。具体如下: (1)数据录入包括对这5 张表的录入。只有具有相应权限的用户才能录入相应表中的数据。(2)数据删除包括对这5 张表的删除。只有具有相应权限的用户才能删除相应表中的数据。数据的删除要注意表之间的关联关系。比如在删除“学生表”中的数据之前 ,应先删除该学生在“借阅表”中的信息,然后再学生表中删除该学生,以保证不违反参照完整性约束。另外,在实际执行删除操作之前应该提醒用户就是否真的要删除数据 ,以免发生误操作。(3)数据修改当某些数据发生变化或某些数据录入不正确时,应该允许用户对数据库中的数据进行修改 ,修改数据的操作一般就是先根据一定的条件查询出要修改的记录,然后在对其中的某些记录进行修改,修改完成后再回到数据库中。同数据的录入与删除一样 ,只有具有相应权限的用户才能修改相应表中的数据。(4)数据查询在数据库应用系统中 ,数据查询就是最常用的功能。数据查询应根据用户提出的查询条件进行 ,在设计系统时应首先征求用户的查询需求,然后根据这些需求整理出系统应具有的查询功能。 一般允许所有使用数据库的人都具有查询数据的权限。本系统提出的查询要求有: 根据学号、学院、专业等信息查询学生的基本信息。根据图书编号查询图书的基本信息。根据管理员编号查询管理员的基本信息。统计各个年级学生借书的总数量。等等。3、3 应用程序实现3、31 语言及 DBMS 的选择精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 5 页,共 19 页 - - - - - - - - - - 图书管理系统数据库制作这 5 个表的数据库使用DBMS 的就是 ACCESS,然后用 VB 语言编写程序代码 ,实现程序的各个功能。其中用到了ADO 数据控件与 DataGrid 控件。3、32 应用程序的编写(1)学生表 VB 代码Private Sub Command1_Click() 添加 命令按钮AdodcStudent、Recordset、AddNew 使添加 与删除 按钮成为不可用状态Command1、Enabled = False Command3、Enabled = False 使更新 按钮成为可用状态Command4、Enabled = True 清空文本框中显示的内容Text1、Text = Text2、Text = Text3、Text = Text4、Text = Text5、Text = End Sub Private Sub Command2_Click() 退出 命令按钮End End Sub Private Sub Command3_Click() 删除 命令按钮Dim res As Integer res = MsgBox( 确实要删除此行记录不?, vbExclamation + vbYesNo + vbDefaultButton2) 提示用户If res = vbYes Then 如确实要删除AdodcStudent、Recordset、Delete AdodcStudent、Recordset、MoveNext If AdodcStudent 、Recordset、EOF = True Then AdodcStudent、Recordset、MoveLast End If End If End Sub Private Sub Command4_Click() 更新 命令按钮 将文本框中的当前值写入结果集中相应字段中AdodcStudent、Recordset、Fields(学号 ) = Trim(Text1 、Text) AdodcStudent、Recordset、Fields(姓名 ) = Trim(Text2 、Text) AdodcStudent、Recordset、Fields(学院 ) = Trim(Text3 、Text) AdodcStudent、Recordset、Fields(专业 ) = Trim(Text4 、Text) AdodcStudent、Recordset、Fields(年级 ) = Trim(Text5 、Text) 使更新生效AdodcStudent、Recordset、Update 使添加 与删除 按钮成为可用状态精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 6 页,共 19 页 - - - - - - - - - - 图书管理系统数据库Command1、Enabled = True Command3、Enabled = True End Sub Private Sub Command5_Click() 上一条 命令按钮AdodcStudent、Recordset、MovePrevious End Sub Private Sub Command6_Click() 下一条 命令按钮AdodcStudent、Recordset、MoveNext End Sub (2)图书表 VB 代码Private Sub Command2_Click() 添加 命令按钮AdodcBook 、Recordset、AddNew 使添加 与删除 按钮成为不可用状态Command2、Enabled = False Command3、Enabled = False 使更新 与取消 按钮成为可用状态Command4、Enabled = True Command5、Enabled = True 清空文本框中显示的内容Text1、Text = Text2、Text = Text3、Text = Text4、Text = Text5、Text = End Sub Private Sub Command3_Click() 删除 命令按钮Dim res As Integer res = MsgBox( 确定要删除此行记录?, vbExclamation + vbYesNo + vbDefaultButton2) 提示用户If res = vbYes Then 如确实要删除AdodcBook 、Recordset、Delete AdodcBook 、Recordset、MoveNext If AdodcBook 、Recordset、EOF = True Then AdodcBook 、Recordset、MoveLast End If End If End Sub Private Sub Command4_Click() 更新 命令按钮 将文本框中的当前值写入结果集中相应字段中AdodcBook 、Recordset、Fields(图书编号 ) = Trim(Text1 、Text) AdodcBook 、Recordset、Fields(图书名称 ) = Trim(Text2 、Text) AdodcBook 、Recordset、Fields(出版社名称 ) = Trim(Text3 、 Text) AdodcBook 、Recordset、Fields(出版日期 ) = Trim(Text4 、Text) AdodcBook 、Recordset、Fields(作者 ) = Trim(Text5 、Text) 精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 7 页,共 19 页 - - - - - - - - - - 图书管理系统数据库 使更新生效AdodcBook 、Recordset、Update 使添加 与删除 按钮成为可用状态Command2、Enabled = True Command3、Enabled = True 使取消 按钮成为不可用状态Command5、Enabled = False End Sub Private Sub Command5_Click() Command2、Enabled = True Command3、Enabled = True Command5、Enabled = False End Sub Private Sub Command6_Click() 上一条 命令按钮AdodcBook 、Recordset、MovePrevious End Sub Private Sub Command7_Click() 下一条 命令按钮AdodcBook 、Recordset、MoveNext End Sub (3)管理员表VB 代码Private Sub Command1_Click() 退出 命令按钮End End Sub Private Sub Command2_Click() 添加 命令按钮AdodcManager 、Recordset、AddNew 使添加 与删除 按钮成为不可用状态Command2、Enabled = False Command3、Enabled = False 使更新 按钮成为可用状态Command4、Enabled = True 清空文本框中现实的内容Text1、Text = Text2、Text = End Sub Private Sub Command3_Click() 删除 命令按钮Dim res As Integer res = MsgBox( 确实要删除此行记录不?, vbExclamation + vbYesNo + vbDefaultButton2) 提示用户If res = vbYes Then 如确实要删除AdodcManager 、Recordset、Delete AdodcManager 、Recordset、MoveNext If AdodcManager 、 Recordset、EOF = True Then AdodcManager 、Recordset、MoveLast End If 精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 8 页,共 19 页 - - - - - - - - - - 图书管理系统数据库End If End Sub Private Sub Command4_Click() 更新 命令按钮 将文本框中的当前值写入结果集中相应字段中AdodcManager 、Recordset、Fields( 管理员编号 ) = Trim(Text1 、Text) AdodcManager 、Recordset、Fields( 管理员姓名 ) = Trim(Text2 、Text) 使更新生效AdodcManager 、Recordset、Update 使添加 与删除 按钮成为可用状态Command2、Enabled = True Command3、Enabled = True End Sub Private Sub Command5_Click() 上一条 命令按钮AdodcManager 、Recordset、MovePrevious End Sub Private Sub Command6_Click() 下一条 命令按钮AdodcManager 、Recordset、MoveNext End Sub (4)借阅表 VB 代码Private Sub Command1_Click() 退出 命令按钮End End Sub Private Sub Command2_Click() 上一条 命令按钮AdodcBorrown 、Recordset、MovePrevious End Sub Private Sub Command3_Click() 下一条 命令按钮AdodcBorrown 、Recordset、MoveNext End Sub Private Sub Command4_Click() 添加 命令按钮AdodcBorrown 、Recordset、AddNew 使添加 与删除 按钮成为不可用状态Command4、Enabled = False Command5、Enabled = False 使更新 按钮成为可用状态Command6、Enabled = True 清空文本框中现实的内容Text1、Text = Text2、Text = Text3、Text = Text4、Text = Text5、Text = Text6、Text = End Sub Private Sub Command5_Click() 删除 命令按钮精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 9 页,共 19 页 - - - - - - - - - - 图书管理系统数据库Dim res As Integer res = MsgBox( 确实要删除此行记录不?, vbExclamation + vbYesNo + vbDefaultButton2) 提示用户If res = vbYes Then 如确实要删除AdodcBorrown 、Recordset、Delete AdodcBorrown 、Recordset、MoveNext If AdodcBorrown 、 Recordset、EOF = True Then AdodcBorrown 、Recordset、MoveLast End If End If End Sub Private Sub Command6_Click() 更新 命令按钮 将文本框中的当前值写入结果集中相应字段中AdodcBorrown 、Recordset、Fields( 学号 ) = Trim(Text1 、Text) AdodcBorrown 、Recordset、Fields( 姓名 ) = Trim(Text2 、Text) AdodcBorrown 、Recordset、Fields( 图书编号 ) = Trim(Text3 、Text) AdodcBorrown 、Recordset、Fields( 图书名称 ) = Trim(Text4 、Text) AdodcBorrown 、Recordset、Fields( 借阅日期 ) = Trim(Text5 、Text) AdodcBorrown 、Recordset、Fields( 应归还日期 ) = Trim(Text6 、Text) 使更新生效AdodcBorrown 、Recordset、Update 使添加 与删除 按钮成为可用状态Command4、Enabled = True Command5、Enabled = True End Sub (5)管理表 VB 代码Private Sub Command1_Click() 退出 命令按钮End End Sub Private Sub Command2_Click() 添加 命令按钮AdodcManagement、 Recordset、AddNew 使添加 与删除 按钮成为不可用状态Command2、Enabled = False Command3、Enabled = False 使更新 按钮成为可用状态Command4、Enabled = True 清空文本框中现实的内容Text1、Text = Text2、Text = Text3、Text = End Sub Private Sub Command3_Click() 删除 命令按钮Dim res As Integer res = MsgBox( 确实要删除此行记录不?, vbExclamation + vbYesNo + vbDefaultButton2) 提精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 10 页,共 19 页 - - - - - - - - - - 图书管理系统数据库示用户If res = vbYes Then 如确实要删除AdodcManagement、 Recordset、Delete AdodcManagement、 Recordset、MoveNext If AdodcManagement 、Recordset、EOF = True Then AdodcManagement、 Recordset、MoveLast End If End If End Sub Private Sub Command4_Click() 更新 命令按钮 将文本框中的当前值写入结果集中相应字段中AdodcManagement、 Recordset、Fields( 管理日期 ) = Trim(Text1 、Text) AdodcManagement、 Recordset、Fields( 管理员编号 ) = Trim(Text2 、Text) AdodcManagement、 Recordset、Fields( 管理员姓名 ) = Trim(Text3 、Text) 使更新生效AdodcManagement、 Recordset、Update 使添加 与删除 按钮成为可用状态Command2、Enabled = True Command3、Enabled = True End Sub Private Sub Command5_Click() 上一条 命令按钮AdodcManagement、 Recordset、MovePrevious End Sub Private Sub Command6_Click() 下一条 命令按钮AdodcManagement、 Recordset、MoveNext End Sub 3、33 应用程序的使用说明为数据库中 5 个表设计的 VB 工程中 ,其基本类型相似 ,由于涉及到参照完整性约束,因此这里将重点说明“学生表”与“借阅表”的使用说明,“图书表”与“管理员表”参照“学生表”,“管理表”参照“借阅表” 。(1) 学生表使用说明启动 VB 程序,打开“学生表”的工程文件,并运行该程序。精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 11 页,共 19 页 - - - - - - - - - - 图书管理系统数据库1) 单击“上一条”“下一条”按钮 ,移动指针将上下移动到相应的条目。2) 单击“添加”按钮 ,窗体上的文本框控件将清空,可以在文本框中输入数据,数据将同时显示在“学生表”的最后一行条目中。精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 12 页,共 19 页 - - - - - - - - - - 图书管理系统数据库3) 单击“更新”按钮 ,数据将完整地添加到“学生表”中。精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 13 页,共 19 页 - - - - - - - - - - 图书管理系统数据库4) 要删除更新的数据时 ,先将移动指针指向要删除的条目,然后单击“删除“按钮,新添加的数据将从“学生表”中删除。5)单击“退出”按钮 ,结束程序代码 ,退出运行界面。(2) 图书表使用说明启动 VB 程序,打开“图书表”的工程文件,并运行该程序。1)单击“上一条”“下一条”按钮 ,移动指针将上下移动到相应的条目。2)单击“添加”按钮 ,窗体上的文本框控件将清空,可以在文本框中输入数据,数据精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 14 页,共 19 页 - - - - - - - - - - 图书管理系统数据库将同时显示在“图书表”的最后一行条目中。3)单击“更新”按钮 ,数据将完整地添加到“图书表”中。4)要删除更新的数据时 ,先将移动指针指向要删除的条目,然后单击“删除“按钮 ,新添加的数据将从“图书表”中删除。5)单击“退出”按钮 ,结束程序代码 ,退出运行界面。(3)管理员表使用说明启动 VB 程序,打开“管理员表”的工程文件,并运行该程序。1)单击“上一条”“下一条”按钮 ,移动指针将上下移动到相应的条目。2)单击“添加”按钮 ,窗体上的文本框控件将清空,可以在文本框中输入数据,数据将同时显示在“管理员表”的最后一行条目中。3)单击“更新”按钮 ,数据将完整地添加到“管理员表”中。4)要删除更新的数据时 ,先将移动指针指向要删除的条目,然后单击“删除“按钮 ,新添加的数据将从“管理员表”中删除。5)单击“退出”按钮 ,结束程序代码 ,退出运行界面。精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 15 页,共 19 页 - - - - - - - - - - 图书管理系统数据库(4)借阅表使用说明启动 VB 程序,打开“借阅表”的工程文件,并运行该程序。1) 单击“上一条”“下一条”按钮 ,移动指针将上下移动到相应的条目。精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 16 页,共 19 页 - - - - - - - - - - 图书管理系统数据库2) 单击“添加”按钮 ,窗体上的文本框控件将清空,可以在文本框中输入数据,数据将同时显示在“借阅表”的最后一行条目中。精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 17 页,共 19 页 - - - - - - - - - - 图书管理系统数据库3) 注意,根据参照完整性约束 ,“借阅表”与“图书表”相连接,当“图书表”中没有添加并更新新的数据时,单击 “更新”按钮后,添加的数据将无法更新到 “借阅表”中。精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 18 页,共 19 页 - - - - - - - - - - 图书管理系统数据库4)无法更新数据 ,也就不存在删除更新条目的操作。5)单击“退出”按钮 ,结束程序代码 ,退出运行界面。(5)管理表使用说明启动 VB 程序,打开“管理表”的工程文件,并运行该程序。1)单击“上一条”“下一条”按钮 ,移动指针将上下移动到相应的条目。2)单击“添加”按钮 ,窗体上的文本框控件将清空,可以在文本框中输入数据,数据将同时显示在“管理表”的最后一行条目中。3)注意,根据参照完整性约束 ,“管理表”与“管理员表”相连接,当“管理员表”中没有添加并更新新的数据时,单击“更新”按钮后 ,添加的数据将无法更新到 “管理表”中。4)无法更新数据 ,也就不存在删除更新条目的操作。5)单击“退出”按钮 ,结束程序代码 ,退出运行界面。精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 19 页,共 19 页 - - - - - - - - - -