visualfropro程序设计教程课后习题答案.docx_第1页
visualfropro程序设计教程课后习题答案.docx_第2页
visualfropro程序设计教程课后习题答案.docx_第3页
visualfropro程序设计教程课后习题答案.docx_第4页
visualfropro程序设计教程课后习题答案.docx_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Visual_FoxPro程序设计教程课后习题答案(主编:南丙旺)第一章1. 试说明数据与信息的区别和联系。 数据是人们用于记录事物情况的物理符号。 信息是数据中所包含的意义。 数据与信息既 有区别,又有联系。数据是表示信息的,但并非任何数据都能表示信息,信息只是加工处理 后的数据,是数据所表达的内容。另一方面信息不随表示它的数据形式而改变,它是反映客 观现实世界的知识,而数据则具有任意性,用不同的数据形式可以表示同样的信息,信息只 是加工处理后的数据,是数据所表达的内容。2. 什么是数据库、数据库管理系统和数据库系统? 数据库是在数据库管理系统的集中控制之下, 按一定的组织方式存储起来的、 相互关联的 数据集合。 数据库管理系统(Database Management System,DBMS)是对数据进行统一的控制和管理, 从而可以有效地减少数据冗余, 实现数据共享, 解决数据独立性问题, 并提供统一的安全性、 完整性和并发控制功能的系统软件。 数据库系统是把有关计算机硬件、软件、数据和人员组合起来为用户提供信息服务的 系统。3. 简述数据库的三级模式结构。 为了有效地组织、管理数据,提高数据库的逻辑独立性和物理独立性,人们为数据库设 计了一个严谨的体系结构,数据库领域公认的标准结构是三级模式结构,它包括外模式、模 式和内模式。 模式又称概念模式或逻辑模式, 对应于概念级。 它是由数据库设计者综合所有用户的数 据, 按照统一的观点构造的全局逻辑结构, 是对数据库中全部数据的逻辑结构和特征的总体 描述,是所有用户的公共数据视图(全局视图)。外模式又称子模式,对应于用户级。它是某 个或某几个用户所看到的数据库的数据视图, 是与某一应用有关的数据的逻辑表示。 内模式 又称存储模式,对应于物理级。它是数据库中全体数据的内部表示或底层描述。4. 数据库系统的特点是什么? 特点是数据共享,减少数据冗余,具有较高的数据独立性,增强了数据安全性和完整性 保护。5. 实体之间的联系有哪几种?分别举例说明。 (1) 一对一联系(11) 例如,一所学校只有一个校长,一个校长只在一所学校任职, 校长与学校之间的联系是一对一的联系。 (2) 一对多联系(1n) 例如, 一所学校有许多学生, 但一个学生只能就读于一所学校, 所以学校和学生之间的联系是一对多的联系。 (3) 多对多联系(mn) 例如,一个读者可以借阅多种图书,任何一种图书可以为多个 读者借阅,所以读者和图书之间的联系是多对多的联系。 6. 数据库有哪几种常用的数据模型?Visual FoxPro 属于哪一类? 在数据库系统中, 常用的数据模型有层次模型、 网状模型和关系模型 3 种。 Visual FoxPro 是一种基于关系模型的关系数据库管理系统。7.以某种应用目的为背景,试设计一个数据库。 我们以图书馆借书应用为例设计一个最简单的数据库,主要是包括以下几个关系学生关 系,图书关系,借书关系,每个关系对应与数据库里面的一个表。那么学生表应该包括(学 号,姓名,专业,年龄等属性) ,图书表应该包括(图书号,图书名,作者名,出版社等属 性) ,这两个表是通过借书关系来实现多对多的联系的,那么借书表主要包括(学号,图书 号等) 。8.关系数据库管理系统的 3 种基本关系运算是什么? 关系运算主要有选择、投影和联接 3 种。9. 试述外部关键字的概念和作用。外部关键字是否允许为空值,为什么? 如果关系中某个属性或属性组合并非关键字,但却是另一个关系的主关键字,则称此 属性或属性组合为本关系的外部关键字。 关系之间的联系是通过外部关键字实现的。 如果该 外部关键字不是该关系的主关键字那么根据参照完整性规则, 该外部关键字可以是空值, 否 则如果该外部关键字也是该关系的主关键字则根据参照完整性规则不能是空值。10. 数据库系统的体系结构有哪几种?常见的数据库开发工具有哪些? 数据库系统的体系结构大体上分为 4 种模式:单用户模式、主从式多用户模式、客户机/ 服务器模式(Client/Server,C/S)和 Web 浏览器/服务器模式(Browser/Server,B/S)。 目前,一些专有数据库厂商都提供了数据库编程工具,如 Sybase 的 Power+、Oracle 的 Developer 2000 等,但比较流行的还是 Delphi、Visual Basic、PowerBuilder 等通用语言,这 几个开发工具各有所长、各具优势。第二章1. 如何启动与退出 Visual FoxPro? Visual FoxPro 6.0 的启动与 Windows 环境下其他软件一样,有 3 种常见方法: (1) 在 Windows 桌面上单击“开始”按钮,选择“程序”选项,单击“Microsoft Visu al Studio 6.0”组中的“Microsoft Visual FoxPro 6.0”选项。 (2) 运行 Visual FoxPro 6.0 系统的启动程序 vfp6.exe。通过“我的电脑”或“资源 管理器”去查找这个程序,然后双击它。或单击“开始”按钮,选择“运行”选项,在弹出 的“运行对话框”中输入 Visual FoxPro 6.0 启动程序的文件名,单击“确定”按钮。 (3) 在 Windows 桌面上建立 Visual FoxPro 6.0 系统的快捷方式图标,只要在桌面上双 击该图标即可启动 Visual FoxPro。 退出 Visual FoxPro 有 5 种常用的方法: (1) 在 Visual FoxPro“文件”菜单项下,选择“退出”菜单项; (2) 在 Visual FoxPro 命令窗口输入 QUIT 命令并回车; (3) 单击 Visual FoxPro 主窗口右上角的“关闭”按钮; (4) 单击 Visual FoxPro 主窗口左上角的控制菜单图标,从弹出的菜单中选择“关闭” , 或者双击控制菜单图标; (5) 同时按 Alt 和 F4 键。2. 简述 Visual FoxPro 用户界面的组成与特点。 Visual FoxPro 的用户界面由 Visual FoxPro 系统菜单、工具栏、命令窗口和状态栏等构 成。Visual FoxPro 用户界面的最大的特点就是界面简单且灵活。3. Visual FoxPro 有几种操作方式?各有何特点? Visual FoxPro 有三种操作方式,菜单操作方式,命令操作方式,程序工作方式。菜 单操作的优点是直观易懂,击键简单(主要是鼠标单击和双击),对于不熟悉 Visual FoxPro 命令、 又没有或不想花时间去学习它的最终用户十分适合。 命令操作方式相对而言速度更加 快并且效率高。Visual FoxPro 除了提供菜单操作方式、命令操作方式外,还提供程序工作 方式。 程序由命令或语句组成。 通过运行程序, 为用户提供更简洁的界面, 达到操作的目的。4. 对话框的作用是什么?它通常包括哪些控制对象? 对话框实际上是一个特殊的窗口,它可以用来要求用户输入某些信息或做出某些选 择,在 Visual FoxPro 6.0 中,对话框通常由文本框、列表框、单选按钮、复选框、命令按钮等部件组成。5. 简述 Visual FoxPro 的可视化设计工具。 Visual FoxPro 6.0 提供了多种可视化设计工具,使用它的各种向导(Wizard)、设计 器(Designer)和生成器(Builder)可以更简便、快速、灵活地进行应用程序开发。 1. Visual FoxPro 向导 Visual FoxPro 系统为用户提供许多功能强大的向导。用户通过系 统提供的向导设计器,不用编程就可以创建良好的应用程序界面并完成许多对数据库的操 作。 2. Visual FoxPro 设计器 Visual FoxPro 系统提供的设计器,为用户提供了一个友好的操 作界面。利用各种设计器使得创建表、数据库、表单、查询以及报表等操作变得轻而易举。 3. Visual FoxPro 生成器 Visual FoxPro 系统提供的生成器,可以简化创建和修改用户界 面程序的设计过程,提高软件开发的质量。6. 完成下列操作: (1) 隐藏与激活“命令窗口” ; 可以通过工具栏上的命令窗口图标来选择隐藏与激活“命令窗口” 。 (2) 求表达式(3-5.1)*3.14159/14 的值; 在命令窗口输入(3-5.1)*3.14159/14,然后回车执行得到结果-0.471239 (3) 设置默认目录; 可以在工具菜单的选项对话框里面的文件位置选项卡里设置默认目录。 (4) 创建名为“我的工具栏”的工具栏; 在操作过程中,用户可以随时创建一个适合于自己工作需要的新工具栏。创建名为“我的 工具栏”的操作步骤如下: (1) 单击“显示”菜单项,选择“工具栏”选项,在“工具栏”对话框下单击“新建 ”按钮,出现如图 2.5 所示的“新工具栏”对话框。 (2) 输入新工具栏名称,输入“我的工具栏” ,并单击“确定”按钮,出现如图 2.6 所 示的“定制工具栏”对话框,与此同时,在屏幕窗口上也出现了“我的工具栏”工具栏。 (3) 在 “定制工具栏” 对话框的最左边是“分类” 列表框,选择该列表框中的任何一类, 其右侧便显示该类的所有按钮。 (4) 用户可根据需要选择分类中的某一类, 并在该分类中选择按钮, 当选中了某一个按 钮后,用鼠标器将其拖动到“我的工具栏”工具栏下即可。 (5) 查询 LIST 命令的帮助信息。 首先是通过在命令窗口执行 help 命令来打开帮助窗口,然后选择“搜索”项,在组合框 中输入“LIST” ,再自己查找相关标题即可。第三章1. 简述 Visual FoxPro 的数据类型。 Visual FoxPro 中的数据类型包括以下几种:1. 字符型,2. 数值型,3. 货币型,4. 日 期型,5. 日期时间型,6. 逻辑型,7. 备注型,8. 通用型,9. 二进制字符型和二进制备 注型。2. 字段变量与内存变量有何区别? 字段变量就是表中的字段名,它是表中最基本的数据单元。字段变量是一种多值变量, 一个表有多少条记录,那么该表的每一字段就有多少个值,当用某一字段名作变量时,它的 值就是表记录指针所指的那条记录对应字段的值。 内存变量独立于表,是一种临时工作单元,它是一种单值变量。可以用内存变量名直接 访问内存变量。3. 下列数据哪些是变量?哪些是常量?是什么类型的常量? 姓名,.F.,98/07/21,教授,1E2, 5585211 ,T 其中 T 和教授是变量其它是常量,姓名和5585211是字符常量,.F.是逻辑常量, 98/07/21 是数值型常量。4. 求下列表达式的值。 (1) LEN(DTOC(DATE() :8 (2) STUFF(现代教育中心,5,0,LEFT(技术中心,4): “现代技术教育中心” (3) VARTYPE(08/23/03):N (4) SPACE(5)-SPACE(5): 空字符串 (5) PRO$FoxPro AND 10090:.F.5. 针对学生表,写出下列条件: (1) 入学成绩高于 600 分的学生;入学成绩=600 (2) 年 龄 大 于 18 岁 但 小 于 25 岁 的 学 生 ; YEAR(DATE()-YEAR( 出 生 日 期 )=18 (3) 少数民族的男生;性别=男 and 少数民族=.T. (4) 在 1985 年 1 月 1 日至 1983 年 12 月 31 日之间出生的学生; 出生日期=12/31/1983 and 出生日期=600 and 少数民族=.F. and 性别= 女6. 写出下列表达式。 (1) 求实数 x 的小数部分;x-INT(x) (2) 求自然数 m 的十位数字;mod(int(m/10),10) (3) 将实数 x 保留两位小数,第三位小数进行四舍五入处理;round(x,2) (4) 将 c 中的小写字母转换成相应的大写字母;upper(c) (5) 判断 n 是否偶数。Int(n/2)=n/27. 分析下列命令执行后的输出结果,并上机验证。 (1) X=STR(13.4,4,1) Y=RIGHT(X,3) Z=&Y+&X ?&Z,Z 16.80 3.4+13.4 (2) DIMENSION A(2,3) A=175 A(2,2)=2*A(2,2) ?A(5),A(1,2) 350 175 (3) X=542 Y=INT(542/100) Z=X%10 ? Z*100+Y205 (4) SET EXACT ON CH=数据库应用 CH1=CH=LEFT(CH,6) ?CH1,CH .F. 数据库应用第四章1. 什么是自由表?什么是数据库表? 属于某一数据库的表称为数据库表,不属于任何数据库而独立存在的表称为自 由表。2. 一个表有 3 个备注型字段,该表有多少个备注文件? 一个备注文件。3. 在设计学生表时,可否将学生“性别”字段定义为逻辑型字段?这和定义为字符 型字段有何区别?若定义为数值型呢? 可以将 “性别” 字段定义为逻辑型字段因为逻辑型字段只有两个取值, 可以用.T.代表男.F. 代表女,定义为字符型也可以只要输入数据的时候保证只能输入“男”和“女”就可以。定 义为数值型也可以,比如可以用 1 代表男 2 代表女。4. 修改表的结构有哪些方法?它们有何区别? 有两中方法第一种是先打开表,然后在命令窗口输入 modify structure 命令打开表设 计器来修改表的结构。 第二中方法是先打开表然后在视图菜单中打开表设计器来对表的结构 进行修改, 这两中方法的实质都是用表设计器来修改表的结构, 不同的只是打开表设计器的 方法不同而已。5. 如何对浏览窗口进行分割?如何设置同步?如何设置数据显示方式? 浏览窗口左下角有一黑色小方块,可用于窗口的分割。用鼠标将小方块向右拖动,便 可把窗口分为两个分区。两个分区显示同一表的内容。 分区后同一记录可以在两个分区同时看到。 “表”菜单项中的链接分区命令可以选择恢 复或者解除这种同步(消除该命令前的“”)。 浏览窗口中的数据有浏览和编辑两种显示方式,用“显示”菜单中的“编辑”命令(在 浏览方式时)或“浏览”命令(在编辑方式时)可在两种显示方式之间切换。6. DISPLAY 和 LIST 命令有何异同? 两个命令的作用基本相同, 区别仅在于 LIST 是连续显示, 当显示的内容超过一屏时, 自动向上滚动,直到显示完成为止。DISPLAY 是分屏显示,显示满屏时暂停,待用户按任一 键后继续显示后面的内容。7. 一个表用 ZAP 命令删除后,该表还存在吗? 该命令与 DELETE 和 PACK 有何异同? 一个表用 ZAP 命令删除后该表还存在只不过表中的记录没有了。而 delete 命令只是逻辑 删除表中的某些记录并没有实际删除还可以恢复。而 pack 命令是物理删除那些被逻辑删除 的记录不能恢复。8. 排序与索引有何区别?索引有哪几种?如何建立索引文件? 排序是改变表中记录的实际物理顺序, 而索引是为该表建立一个索引文件设置一个逻辑顺序,索引可分为下列 4 种类型:主索引,候选索引,惟一索引,普通索引。建立索引文件 有两种方法:1. 用命令建立索引,2. 在表设计器中建立索引。9. 在已打开的表中有“姓名”字段,此外又定义了一个内存变量“姓名” 。要把内存 变量“姓名”的值赋给当前记录的“姓名”字段,应使用什么命令? 姓名=m.姓名10. 设 txl.dbf 有 10 条记录,在命令窗口执行下列命令后,表的当前记录是什么? USE txl GO 5 LIST NEXT 3 SKIP 2 第 6 条记录。11. 在不同工作区之间切换用什么命令?如何访问别的工作区中的表? 可以用 SELECT 工作区号别名0 命令来在不同的工作区之间切换。 在当前工作区中可以访问其他工作区中的表的数据, 但要在非当前表的字段名前加上别 名和连接符,引用格式为:别名.字段名或别名-字段名12. 什么叫关联?如何建立关联? 所谓关联,就是当前表记录指针的移动,能引起别的表按某种条件相应地移动记录指针。 建立关联后,称当前表为主文件,与主文件建立关联的表为子文件。 建立一对一的关联可以用命令:SET RELATION TO 关联表达式 1 INTO 工作 区号 1别名 1 建立一对多的关联可以用命令:SET SKIP TO 别名 1 别名 2 ,13. 就学生表,写出实现下列操作的命令: (1) 显示第 5 号记录; go 5 display (2) 显示第 5 号至第 10 号之间的全部记录; go 5 list next 6 (3) 连续列出 1980 年以后出生的学生的姓名与出生年月; list for year(出生日期)=1980 fields 姓名,出生年月 (4) 显示在 1985 年 1 月 1 日至 1983 年 12 月 31 日之间出生的学生记录; list for 出生年月=12/31/1983 and 出生年月=01/01/1985 (5) 在表的顶部增加一个新记录; go top insert before (6) 修改最后一个记录; go bottom edit (7) 将 16 岁以下的少数民族学生入学成绩提高 20 分; replace 入学成绩 with 入学成绩+20 for year(date()-year(出生年月)1220 (14)列出和面积最小的仓库有联系的供应商的个数; select count(a.供应商号) from 订购单表 a ,职工表 b ,仓库表 c where a.职工号=b. 职工号 and b.仓库号=c.仓库号 and c.面积=(select min(面积) from 仓库表) (15)列出工资低于本仓库平均工资的职工信息。 select * from 职工表 a where a.工资智通公司沈阳) (2) 删除目前没有任何订购单的供应商; delete from 供应商表 where not(供应商号 in (select distinct 供应商号 from 订购 单表) (3) 删除由在上海仓库工作的职工发出的所有订购单; delete from 订购单表 where 订购单表.职工号=职工表.职工号 and 职工表.仓库号=仓 库表.仓库号 and 仓库表.城市=上海 (4) 给北京仓库的面积增加 100 m2; update 仓库表 set 面积=面积+100 where 城市=北京 (5) 给低于所有职工平均工资的职工的工资提高 10%。 update 职工表 set 工资=工资*1.1 where 工资却只能从数据库的规范性和完整性出 发,比如可能用户在浏览一个信息的时候,这些信息却分布在不同的表中,但这并不妨碍我 们提供这样的服务,我们可以通过 VF 提供的试图设计器来设计出一个视图来满足用户的需求。 这样既能满足数据库设计的要求又可以满足用户的多样性的要求。 例如在前面提及的学 生管理数据库中的选课表,对于一般用户来讲,是无法使用的,因为学号和课程号都是采用 代码方式,所以有必要使用视图方式进行透明性操作。希望在操作过程中看到学号时,知道 其学生名字, 看到课程号时, 知道其课程名称。 我们可以设计出一个视图来满足用户的需求, 显示学生姓名、课程名及成绩。这里的姓名、课程名及成绩等信息分布于学生、课程、选课 等 3 个表中,故要建立一个以这 3 个数据表为源表的视图。具体的步骤见书 123-124 页。 3.对学生管理数据库,分别建立以下查询: (1).查询学生表中的全部信息; (2).查询非湖南籍的学生名单; (3).查询全部学生的如下信息:学号、姓名、课程名、成绩、入学成绩; (4).查询每个省的学生人数,并将结果以条形图形式显示; (5).以降序显示每门课程的平均成绩,要求显示课程名称和平均成绩两个数据项。 4.对学生管理数据库,分别建立以下视图: (1).为学生选课建立一个视图,要求包含课程号、课程名、学分、任课教师的姓名及职 称等信息; (2).为用人单位建立一个视图,要求包含学生的姓名、性别、出生日期、籍贯、所修课 程的名称、学习成绩; (3).为学校人事部门建立一个视图以帮助其掌握教师教学基本情况,要求包括教师编 号,姓名,职称,担任授课的课程编号、名称、学分等信息; (4).为学生办公室建立一个浏览学生考试成绩的视图, 要求包含全部学生的基本信息和 课程号、课程名称、成绩,所有数据只能浏览,不能修改。第八章1.简述项目管理器的主要功能。 Visual.FoxPro 的项目是文件、 数据、 文档和对象的集合,“项目管理器” Visual.FoxPro 是 中处理数据和对象的主要组织工具, 在建立表、 数据库、查询、表单、报表以及应用程序时, 可以用“项目管理器”来组织和管理文件。2.项目管理器有几个选项卡?每个选项卡的作用是什么? 项目管理器有 6 个选项卡,它们分别是: “全部”“数据”“文档”“类”“代码”和 、 、 、 、 “其他” ,每个选项卡用于管理某一类型文件。 1.“数据”选项卡 该选项卡包含了一个项目中的所有数据:数据库、自由表、查询和视图。 2.“文档”选项卡 该选项卡中包含了处理数据时所用的全部文档, 即输入和查看数据所用的表单, 以及打 印表和查询结果所用的报表及标签。3.“类”选项卡 该选项卡显示和管理由类设计器建立的类库文件。4.“代码”选项卡

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论