Visual FoxPro程序设计教程(主编:刘卫国 第三版)6-14课后答案 联系客服

发布时间 : 星期一 文章Visual FoxPro程序设计教程(主编:刘卫国 第三版)6-14课后答案更新完毕开始阅读4dda3afb04a1b0717fd5dd39

第三版

SET.TALK.OFF

STORE.″伟大祖国″.TO.var CLEAR n=1

DO.WHILE.n<8 ?.SUBSTR(①) n=n+2 ENDDO ?.(②)

??.SUBSTR(var,1,4) RETURN

① var,n,n+1

② substr(var,5,8)

(2).对学生表,按入学成绩降序显示前10名和按升序显示后10名学生的入学成绩。

SET.TALK.OFF USE.学生

INDEX.ON.入学成绩.TAG.cjsy.DESC n=1 CLEAR

@1,20.SAY.″前十名成绩:″ DO.WHILE.n<=10 DISP n=n+1 (③) continue ENDDO

WAIT.″″ CLEAR

@1,20.SAY.″后十名成绩:″ n=1

(④) go bottom DO.WHILE.n<=10 DISP n=n+1 SKIP.-1 ENDDO USE

SET.TALK.ON RETURN.

Continue

第 9 页 共 13 页

第三版

go bottom

第十章

1..名词解释:类、子类、对象、事件、方法、属性。

类(Class)是具有相同属性特征和行为规则的多个对象的一种统一描述。

子类用来模拟现实世界中的类的层次问题,子类将继承其父类的全部特征和方法程序,当然,在子类中可以对这些继承的特征和方法程序进行修改,以对该子类进行更准确的模拟。

对象是对现实世界中实体的一种模拟工具,是类的实例。

事件是由外部实体作用在对象上的一个动作。在面向对象方法中,事件是驱动蕴涵在对象中的程序的引擎,一个事件有一个事件名,且与一个事件响应程序(方法程序)相关联,当作用在一个对象上的事件发生时,与这个事件相关联的程序就获得一次运行。

属性(Property)是模拟所描述实体的静态特征。 方法(Method)是模拟实体对一些事件(Event)的反映。 2..对象与类有什么相同点和不同点?

对象和类都是用来描述现实世界中存在的一些实体,对象用来模拟那些具体的实体,而类描述的是这些实体所共有的一些特征与属性。例如我们用人这个类来描述所有现实世界中存在的人的共性,而对象是用来描述那些具体存在的人,如张三,李四。 3..容器类与控件类有哪些差别?引用容器中的对象时应注意哪些问题?

Visual.FoxPro的基类分成容器类和控件类,容器类可以包含其他对象,并且允许访问这些对象。控件类不能容纳其他对象,它没有容器类灵活。

在调用容器中某一特定对象时要掌握面向对象方法中对象的标识方法。要注意以下几点 1.容器类中对象的层次,2.对象局域名,3.几个代词的用法。 4..创建类有哪些方法?各有什么特点?

创建类有两种方法用程序方法设计类与用可视化方法设计类,用程序方法设计类这种方法相对比较复杂但也较灵活。用可视化方法设计类这种方法相对比较方便易操作。

5..用CreateObject()命令建立一个表单,并在表单中加入一个标签对象,标签的Caption属性设置为“我的第一个表单”。 6..用可视化方法设计一个由命令按钮派生的子类,并为其加入一个属性Number,为该子类设计两个事件程序Click和RightClick,当Click事件发生时,判断其属性Number的值是否是一个奇数,当RightClick事件发生时,判断Number值是否是一个能被3整除的数。判断结果用MessageBox()函数输出。

7..用面向对象方法设计一个程序,找出1~100中的全部素数。

第11章

1 .使用表单向导建立一个关于学生表的操作表单。如果要执行表单时不能修改数据,应修改什么对象的什么属性?

应该是修改表单中相关控件对象的ReadOnly属性,改为.F.。

2 .不用表单向导,建立一个与第一题完全相同的表单。提示:修改第一题得到的表单查看其各对象的属性,还可查看到命令按钮组的父类名及其类文件。

3 .设计一个表单,表单中包含一个命令按钮和一个文本框,文本框的初始值设置为0,当单击一次命令按钮时,文本框中的数值加1。 4 .建立一个航班表:

航班(城市名,航班号,时间,价格)

第 10 页 共 13 页

第三版

该表中包含去北京、上海、广州、哈尔滨等4个城市的航班信息(一个城市可能有多个航班)。设计一个航班查询表单,要求:

使用选项按钮组表示城市,用表格显示查询结果。不设命令按钮,当选中某个选项按钮时,表格立即显示该城市的查询结果。

5 .设计一个使用列表框和表格的表单,要求: 列表框与学生表关联,表格与选课表关联,并且,当选中列表框中的某个记录时,表格中显示该学生的选课信息。

6 .在第4题的基础上,再建立一个列车表: 列车(城市,车次,开车时间,到达时间)

该表中包含开往北京、上海、广州、哈尔滨等4个城市的车次情况。建立一个包含两个页面的页框,其中第一个页面查询航班信息,第二个页面查询列车信息,其他要求与第4题相同。

第12章

1.菜单由哪几部分组成?

常规的菜单系统一般是一个下拉式菜单,由一个条形菜单和一组弹出式菜单组成。 3. 简述菜单文件与菜单程序的区别与联系。

菜单文件是菜单设计器中用户定义的保存文件。而菜单程序则是最后用户看到的菜单所 对应的程序代码文件,可以在菜单设计器中用生成命令把菜单文件转化为对应的菜单程序。两者都是对菜单的描述,只不过描述的层次不同而已。

4. 什么是快速菜单和快捷菜单?两者有何区别?

“快速菜单”主要是为了能让用户方便快速地设计菜单的一种方法,选择“快速菜单”命令后,一个与Visual FoxPro系统菜单一样的菜单会自动复制到菜单设计器窗口,供用户修改成符合自己需要的菜单。这种方法能快速建立高质量的菜单。快捷菜单是一种单击鼠标右键才出现的弹出式菜单, 快速菜单是一种快速生成菜单的方法,而快捷菜单是菜单中的一个分类。

4. 利用菜单设计器为“学生管理系统”建立一个下拉菜单。其具体要求如下: (1) 条形菜单包含“查询”、“数据维护”、“打印”和“退出”4个菜单项; (2) 其中“数据维护”下拉菜单又包含“浏览记录”、“修改记录”和“按字段修改”等菜单项,设置“浏览记录”的快捷键为CTRL+X;

(3) 其中“打印”下拉菜单又包含“学生档案表”和“学生成绩表”两个菜单项; (4) 单击“退出”菜单命令,可退出本“学生管理系统”程序,并自动恢复Visual FoxPro的系统菜单。

5. 在以上菜单系统中加入系统的“编辑”下拉菜单和“打印预览”菜单项。 6. 创建并设立顶层菜单。

7. 为一个表单建立一个快捷菜单,鼠标右键单击该表单时弹出快捷菜单,快捷菜单中 的“浏览”选项可以浏览学生表。

第13章

1. 报表的主要功能是什么?

报表的主要功能是为了能更加灵活方便的输出数据。不但可以像查询、表单那样够浏览 数据记录外,还能控制打印输出数据记录的格式。

第 11 页 共 13 页

第三版

2. 报表和表单的区别在哪里?

\表单\能让用户按另一种形式在屏幕上查阅数据表中的数据记录,实用性非常的很强,不但能用它来简化\浏览窗口\,还能更直观的显示和浏览数据、并且可按用户所喜欢的风格来显示记录,以及通过一组控制按钮更方便、更加容易地控制和使用数据记录。报表除了能像查询、表单那样够浏览数据记录外,还能控制打印输出数据记录的格式,并且允许将各种格式的文本与图形对象组合在一起输出,从而建立起清晰的、图文并茂的报表。 3. 报表包括哪几个基本组成部分?

报表主要由两部分组成:数据源和报表布局。数据源是报表的数据来源,报表布局则定义报表打印格式。

4. 报表控件是指的什么?

报表控件是显示在报表上的,用来配合报表来向用户输出更多更灵活的内容如图形、图象、表达式等。

5. 什么是标签?标签与报表的区别是什么?

标签是一种特殊的报表,它的创建、修改方法与报表基本相同。两者之间主要的不同是标签设计器基于所选标签的大小自动定义页面和列。

6. 在定义一个表、一个视图或查询之前,可以创建报表或标签吗? 不可以,因为创建报表时必须要有数据源。 7. 有一个教职工表:

教职工(编号,姓名,性别,出生日期,籍贯,民族)

完成下列操作:

(1) 建立一个教职工表,其中的数据自定; (2) 快速生成一个报表;

(3) 利用报表向导设计一个报表; (4) 利用报表设计器设计报表; (5) 在屏幕上预览报表输出格式; (6) 利用教职工表创建一个标签。

第14章

1. 说明在学生管理数据库中的授课表中为什么不加入一个“课程名”字段以方便查询,增

第 12 页 共 13 页

第三版

加这个字段后不符合规范化的哪个范式?

因为课程名这个信息已经在课程表中出现了,本身而言课程名也应该是属于课程表的 一个属性,如果我们在授课表中再加入一个课程名字段则不符合规范化中的第二阶范式,容易引起数据的不一致,因为同样的信息存在于两个表中。

2. 画出常见的一些实体(如学生、课程、教师、教室、寝室等)的E-R图,以描述这些

实体属性及其联系。

教师编号姓名职称课程号课程名学分学号姓名民族教师课程n选课m学生n授课m年龄n住宿寝室编号教室寝室编号 1寝室地址教室编号人数地址

3. 将第2题获得的E-R图转化为关系模型,并进行规范处理(规范化处理的一个基本方法就是分解,把一个表分解为几个小表,表之间用主属性进行连接)。

转化为关系模型应该是:

学生(学号<关键字>,姓名、民族、年龄,寝室编号<外键>) 教师(教师号<关键字>,姓名,职称) 课程(课程号<关键字>,课程名,学分) 教室(教室编号<关键字>,人数,地址) 寝室(寝室编号<关键字>,地址)

选课(学号<外键>,课程号<外键>,成绩)

授课(课程号<外键>,教师号<外键>,教室编号<外键>)

4. 补充完成“工资发放系统”中未给出的设计:第一、二类员工的考核数据录入,工资汇总表生成,工资数据备份等工作。

5. 做一个简化的“学生管理系统”系统设计,完成其功能设计、数据库设计和部分功能的程序设计工作,要求使用E-R图建立数据模型并进行规范化处理。

Visual FoxPro程序设计教程(主编:刘卫国)课后习题答案

第 13 页 共 13 页