Visual FoxPro操作题及答案(共88套)_第1页
Visual FoxPro操作题及答案(共88套)_第2页
Visual FoxPro操作题及答案(共88套)_第3页
Visual FoxPro操作题及答案(共88套)_第4页
Visual FoxPro操作题及答案(共88套)_第5页
已阅读5页,还剩206页未读 继续免费阅读

下载本文档

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

文档简介

1、第一套第一题:基本操作1在考生文件夹下新建一个名为学生管理的项目。2将学生数据库加入到新建的项目中。3将教师表从学生数据库中移出,使其成为自由表。4通过学号字段为学生和选课表建立永久联系(如有必要请先建立相关索引)。答案:【操作步骤】(1)在命令窗口输入Crea proj 学生管理新建一个名为学生管理的项目。(2)打开新建的项目文件学生管理,单击数据选项卡,选中其中的数据库项,单击右侧的添加按钮,将考生文件夹下的学生数据库添加到项目中。(3)在项目管理器中打开学生数据库,在其数据库设计器中右键单击教师表,选择删除命令,在弹出的对话框中单击移去按钮。(4)在数据库设计器中右键单击学生表并选择修改

2、,在表设计器的字段选项卡中选中学号,单击索引项中的升序索引,单击索引选项卡,修改索引的类型为主索引。以同样的方式为选课表建立普通索引。按下学生表中的学号索引项,拖动鼠标至选课表的学号索引项上并松开鼠标,这样就建立了两表的永久性联系。第二题:简单应用在考生文件夹下完成如下简单应用:1用SQL语句对自由表教师完成下列操作:将职称为教授的教师新工资一项设置为原工资的120%,其他教师的新工资与原工资相同;插入一条新记录,该教师的信息为:姓名林红,职称讲师,原工资10000,新工资10200,同时将使用的SQL语句存储于新建的文本文件teacher.txt中(两条更新语句,一条插入语句,按顺序每条语句

3、占一行)。2使用查询设计器建立一个查询文件stud,查询要求:选修了英语并且成绩大于等于70的学生的姓名和年龄,查询结果按年龄升序存放于stud_temp表中。(完成后要运行查询)答案:【解题思路】 在命令窗口运行代码,并复制到文本中保存;通过查询设计器完成查询。(1)【操作步骤】步骤1:在命令窗口依次输入下列命令并按回车。update 教师 set 新工资=原工资*1.2 where 职称=教授update 教师 set 新工资=原工资 where !(职称=教授)inse into 教师 Values(林红,讲师,10000,10200)步骤2:使用新建工具创建一个文本文件teacher.

4、txt,把上面三行代码复制到新建的文本文件中并保存。(2)【操作步骤】步骤1:单击常用工具栏中的新建按钮,新建一个查询文件,同时打开查询设计器。步骤2:将考生文件夹下的选课、课程和学生3个表添加到查询设计器中,且选课表一定要先添加,才能有效建立3个表之间的关联。步骤3:在字段选项卡中,将姓名和年龄两个字段添加到选定字段列表框中。步骤4:在筛选选项卡中设置筛选条件为 课程.课程名称 = 英语 AND 选课.成绩 = 70步骤5:在排序依据选项卡中,设置按年龄升序排列。步骤6:选择查询菜单下的查询去向命令,在查询去向对话框中选中表,在表名文本框中输入stud_temp。步骤7:保存查询文件名为st

5、ud,并运行查询。第三题:综合应用设计一个名为mystu的表单(文件名为mystu,表单名为form1),表单标题为计算机系学生选课情况,所有控件的属性必须在表单设计器的属性窗口中设置。表单中有一个表格控件(名称为Grid1,该控件的RecordSourceType属性设置为4SQL说明)和两个命令按钮查询(Command1)和退出(Command2)。运行表单时,单击查询命令按钮后,表格控件中显示6系(系字段值等于字符6)的所有学生的姓名、选修的课程名和成绩。单击退出按钮关闭表单。注意:完成表单设计后要运行表单的所有功能。答案:【操作步骤】步骤1:新建一个空白表单,文件名为mystu。步骤2

6、:通过表单控件工具栏,添加一个表格控件和两个命令按钮控件到表单中。步骤3:在属性窗口中设置各控件的属性并将表学生、课程和选课 添加到表单的数据环境中。各控件的属性设置如下。步骤4:编写两个命令按钮的Click事件代码如下。*查询按扭的Click如下代码*thisform.grid1.recordsourcetype=4thisform.grid1.recordsource=;SELECT 学生.姓名, 课程.课程名称, 选课.成绩; FROM 学生,选课,课程 ; WHERE 选课.课程号 = 课程.课程号 ; AND 学生.学号 = 选课.学号; AND 学生.系 = 6; INTO CUR

7、SOR temp thisform.refresh*退出按扭的Click事件代码如下。 ThisForm.Release步骤5:运行并保存并按题目要求运行表单。第二套一、基本操作 在考生文件夹下完成如下操作: 1.打开订货管理数据库,并将表order_list添加到该数据库中。 2.在订货管理数据库中建立表customer,表结构描述如下: 客户号 字符型(6) 客户名 字符型(16) 地址 字符型(20) 电话 字符型(14) 3.为新建立的customer表创建一个主索引,索引名和索引表达式均是客户 号。 4.将表order_detail从数据库中移出,并永久删除。答案:【操作步骤】第一步

8、:打开考生文件夹下的订货管理数据库 第二步:打开数据库菜单选择添加表(A)在弹出的打开对话框中,选定考生文件夹下的order_list表,再点击确定即可 第三步:再次打开数据库菜单选择新建表(N),在弹出的对话框中选择新建表,并在弹出创建对话框中选定考生文件夹,在输入表名中填入customer,再点击保存。 第四步:在弹出的表设计器中按题面的要求依次输入各个字段的定义,选择索引标签,在索引名列中填入客户号,在索引类型列中选择主索引,在索引表达式列中填入 客户号,点击确定按钮,保存表结构。 第五步:在数据库设计器窗口中单击选中order_detail,打开主窗口的数据库菜单选择移去(R),并在弹

9、出的菜单中选择删除(d)即可,这样就将表order_detail从数据库中移出,并永久删除。二、简单应用 在考生文件夹下完成如下简单应用: 1.将customer1表中的全部记录追加到customer表中,然后用SQL SELECT语句完成查询:列出目前有订购单的客户信息(即有对应的order_list记录中customer表中的记录),同时要求按客户号升序排序,并将结果存储到results表中(表结构与customer表结构相同)。 2.打开并按如下要求修改form1表单文件(最后保存所做的修改): (1) 在确定命令按钮的click事件(过程)下的程序有两处错误,请改正之; (2) 设置T

10、ext2控件的有关属性,使用户在输入口令时显示*(星号) 解题思路: 答案:(1)【操作步骤】将customer1中的全部记录追加到customer中,要将一个表的所有记录追加到另一个表中使用APPEND FROM 命令,首先打开customer:USE CUSTOMER,在APPEND FROM的后面是要追加到CUSTOMER的表名,这里是CUSTOMER1。SELECT * FROM CUSTOMER; WHERE 客户号 IN; (SELECT 客户号 FROM ORDER_LIST GROUP BY 客户号); (2)【操作步骤】错误1:在text1和text2后加上“.value”

11、错误2:将close 改为:release(2) 设置Text2控件的有关属性,使用户在输入口令时显示*(星号)。 先用鼠标选中TEXT2,打开“属性”窗口,选中“布局”页框,找到属性项“PasswordChar”,并将其值修改为“*”。 三、综合应用(1小题,计30分) 使用报表设计器建立一个报表,具体要求如下: (1) 报表的内容(细节带区)是order_list表的订单号、订购日期和总金额; (2) 增加数据分组,分组表达式是 order_list.客户号,组标头带区的内容是客户号,组注脚带区的内容是该组订单的总金额合计 (3) 增加标题带区,标题是 订单分组汇总表(按客户),要求是3号

12、字、黑体,括号是全角符号。 (4) 增加总结带区,该带区的内容是所有订单的总金额合计。最后将建立的报表文件保存为report1.frx文件。 提示:在考试的过程中可以使用显示预览菜单查看报表的效果。答案:【操作步骤】步骤1:在Visual FoxPro的主窗中按下组合键Ctrl+N,系统弹出新建对话框,在文件类型中选择报表,再点击新建文件按钮,则系统弹出报表设计器窗口 步骤2:从报表设计器的工具栏上单击数据环境按钮,系统打开数据环境设计器,这时主菜单栏出现数据环境菜单,从中选择添加,系统弹出添加表或视图对话框,选择考生文件夹下的order_list表,并点击关闭按钮 步骤3:在报表设计器和数据

13、环境设计器都可见的情况下,在数据环境设计器中表order_list的订单号字段上按下鼠标左键,并拖动到报表设计器的细节带区在合适的位置松开鼠标。用同样的方法,将订购日期、总金额都放置在细节带区的合适位置 步骤4:右键点击数据环境中的order_list,点击属性,选中Order属性为客户号,单击主菜单的报表,并选择数据分组(G),系统弹出数据分组对话框,单击对话框中的省略号按钮,弹出 表达式生成器,从中选择分组表达式:order_list.客户号。这样报表设计器中增加组标头和组注脚带区。适当调整两个新增加的带区的高度。利用第三步的方法,在组标头带区添加显示order_list客户号字段的域控件

14、。单击报表控件工具栏的域控件按钮,然后在组注脚 1:客户号带区的适当位置上单击鼠标,系统显示一个报表表达式对话框,在表达式文本框中通过单击右侧对话按钮,打开表达式生成器对话框,从中选择order_list.总金额字段,单击确定,单击报表表达式对话框的计算(C),弹出计算字段对话框,选中总和计算类型,单击 确定,在报表表达式对话框中单击确定,这样组注脚带区完成 步骤5:点击报表菜单中的标题/总结带区,用和第四步类似的方法可以建立标题带区和总结带区 步骤6:以文件名report1.frx将报表文件保存在考生文件夹下。第三套一、基本操作题(共4小题,第1和2题是7分、第3和4题是8分) 在考生文件夹

15、下,有一个资源数据库FRDB,该数据库有资源表FR_T、农户表P_T和树种表TREE_T三个表。其中,资源表FR_T存储了全乡农民承包的土地编号、户主编号、小地名、面积、树种编号、蓄积(生长在山上的树的木材体积)和承包年度。打开资源数据库FRDB,完成如下操作: 1在农户表P_T中增加一个字段名继承人、数据类型为字符、宽度为8的字段。 2设置资源表FR_T中面积字段的有效性规则:面积大于等于1,小于等于100,默认值为10;蓄积字段的有效性规则:蓄积大于等于0,小于等于200,默认值为100;(注意:表达式应写成 面积=1.AND.面积=0.AND.蓄积=1.AND.面积=0.AND.蓄积0

16、if int(x/2)=x/2 s1=s1+1 else s2=s2+1 endif*found* if div(x,3)=0 s3=s3+1 endif x=x-1enddothisform.text2.value=s1thisform.text3.value=s2thisform.text4.value=s3thisform.text5.value=s1+s2+s3*错误1:改为 STORE 0 TO x,s1,s2,s3。错误2:改为 x=val(thisform.text1.value)。错误3:改为 if mod(x,3)=0。步骤2:以同样的方法修改退出按钮的Click事件代码为T

17、hisform.Release第三题:综合应用在考生文件夹下有一个名为zonghe的表单文件,其中:单击添加命令按钮可以将左边列表框中被选中的项添加到右边的列表框中;单击移去命令按钮可以将右边列表框中被选中的项移去(删除)。请完善确定命令按钮的Click事件代码,其功能是:查询右边列表框所列课程的学生的考试成绩(依次包含姓名、课程名称和考试成绩3个字段),并先按课程名称升序排列,课程名称相同的再按考试成绩降序排列,最后将查询结果存储到表zonghe中。注意:(1)SCORE表中的考试成绩字段是在基本操作题中修改的。(2)程序完成后必须运行,要求将计算机基础和高等数学从左边的列表框添加到右边的列

18、表框,并单击确定命令按钮完成查询和存储。答案:【解题思路】在表单设计器中完成命令按钮的Click事件代码的修改或编写。【操作步骤】步骤1:确定命令按钮的Click事件如下。 *确定按钮的Click事件代码*SELECT Student.姓名, Course.课程名称, Score.考试成绩; FROM student INNER JOIN score; INNER JOIN course ; ON Score.课程编号 = Course.课程编号 ; ON Student.学号 = Score.学号; where &cn; ORDER BY Course.课程名称, Score.考试成绩 DE

19、SC; INTO TABLE zonghe.dbf*步骤2:保存并运行表单。第七套第一题:基本操作基本操作题为4道SQL题,请将每道题的SQL命令粘贴到sql.txt文件,每条命令占一行,第1道题的命令是第1行,第2道题的命令是第2行,以此类推;如果某道题没有做相应行为空。注意:必须使用SQL语句操作且SQL语句必须按次序保存sql.txt文件中,其他方法不得分。在考生文件夹下完成下列操作:1利用SQL SELECT语句将表stock_sl.dbf复制到表stock_bk.dbf中;2利用SQL INSERT语句插入记录(600028,4.36,4.60,5500)到stock_bk表中。3利

20、用SQL UPDATE语句将stock_bk.dbf表中股票代码为600007的股票现价改为8.88。4利用SQL DELETE语句删除stock_bk.dbf表中股票代码为600000的股票。答案:【操作步骤】本题应分为两个步骤完成:(1)在命令窗口中分别输入相应命令,并按回车以执行。 SELECT * FROM stock_sl INTO DBF stock_bk或 SELECT * FROM stock_sl INTO TABLE stock_bk INSERT INTO stock_bk VALUES(600028,4.36,4.60,5500) UPDATE stock_bk SET

21、 现价=8.88 WHERE 股票代码=600007 DELETE FROM stock_bk WHERE 股票代码=600000(2)将命令按题目要求复制到sql.txt文件中。第二题:简单应用在考生文件夹下完成如下简单应用:1根据表stock_name和stock_sl建立一个查询,该查询包含字段:股票代码、股票简称、买入价、现价和持有数量,要求按股票代码升序排序,并将查询保存为query_stock.qpr。注:股票代码来源于表stock_name中的股票代码。2modi.prg中的SQL语句用于计算银行的股票(股票简称中有银行两字)的总盈余,现在该语句中的3处错误分别出现在第1行、第4

22、行和第6行,请改正。(注意:不要改变语句的结构、分行,直接在相应处修改。)答案:(1)【操作步骤】步骤1:通过新建对话框新建一个查询,打开查询设计器。步骤2:在添加表或视图对话框中选择stock_Name和stock_sl表,这样两个表就被添加到查询设计器中,同时为它们设定联接条件为:stock_Name.股票代码=stock_sl.股票代码。步骤3:在字段选项卡中,将字段stock_Name.股票代码、stock_Name.股票简称、stock_sl.买入价、stock_sl.现价和stock_sl.持有数量添加到选定字段中。步骤4:在排序依据选项卡中,选择stock_Name.股票代码字段

23、,单击升序单选按钮。步骤5:保存并运行查询,查询文件名为query_stock。(2)【操作步骤】步骤1:通过常用工具栏中的打开对话框打开考生文件夹下的modi.prg文件。步骤2:修改程序中的错误如下。错误1:SELECT COUNT(现价-买入价)*持有数量) ;修改为:SELECT SUM(现价-买入价)*持有数量) ;错误2:= ;修改为:IN ;错误3:WHERE 银行 LIKE 股票简称)修改为:WHERE股票简称LIKE %银行%)步骤3:保存并运行修改后的程序文件,查看程序运行结果。第三题:综合应用(1)在考生文件夹下建立一个名为stock_form的表单,其中包含两个表格控件,第一个表格控件名称是grdStock_name,用于显示表stock_name中的记录;第二个表格控件名称是grd

温馨提示

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

评论

0/150

提交评论