Visual_FoxPro程序设计教程(主编刘卫国)课后习题答案9-14

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

第九章1..写出下列程序的执行结果。(1).CLEARSET.TALK.OFF..x=10y=-3FOR.n=29+x.TO.x.STEP.yENDFOR?.nRETURN9(2).主程序:t1.prgSET.TALK.OFFSTORE.′AB′.TO.k1,k2DO.t2?.k1+k2RETURN子程序:t2prgPRIVATE.k1k1=k2+″250″?.k1RETURN.“AB250”“ABAB”(3).SET.TALK.OFFCLEARSTORE.1.TO.xSTORE.20.TO.yDO.WHILE.x=yIF.INT(x/2)x/2x=1+x^2y=y+1LOOPELSEx=x+1ENDIFENDDO?.x,ySET.TALK.ONRETURN.122.0023(4).主程序:z.prgSET.TALK.OFFSTORE.2.TO.x1,x2,x3x1=x1+1DO.z1?.x1+x2+x3RETURN子程序:z1prgx2=x2+1DO.z2x1=x1+1RETURN子程序:z2prgx3=x3+1RETURN.TO.MASTER.9(5).SET.TALK.OFFx=15y=7DO.sub.WITH.x,(y)?.x,yRETURNPROCEDURE.subPARAMETERS.a,ba=a+bb=a-bRETURN.(6).SET.TALK.OFFx=9y=13z=fu(x,y)?.zRETURNFUNCTION.fuPARAMETERS.a,ba=a*bRETURN.(a).1172..输入一个三位整数,将其反向输出。如输入326,输出623。settalkoffinput请输入一个三位数toab=100*mod(a,10)+10*mod(int(a/10),10)+mod(int(a/100),10)?breturn3..输入学生成绩,若成绩大于80分,则输出“优良”,成绩小于60分,则输出“不及格”,否则输出“中等”。settalkoffinput请输入学生成绩toaifa80?优良elseifa60?不及格else?中等endifendifreturn4..在学生表中,分别统计汉族学生和少数民族学生的人数。settalkoffuse学生表countfor少数民族=.T.toacountfor少数民族=.F.tob?少数民族学生人数为,a?汉族学生人数为,breturn5..假定有包含若干个记录的表文件c1.dbf,其结构是:f1(N,3,0),f2(N,3,0)。编写程序,其功能是把各记录中所有大于40的字段值累加起来,最后把累加的结果存入第一个记录的f2字段中。settalkoffusec1a=0dowhile.not.eof()iff140a=a+f1endififf240a=a+f2endifcontinueenddogotopf2=ausereturn6..一个自然数是素数,且它的数字位置经过任意对换后仍为素数,则称为绝对素数,例如13就是一个绝对素数。试求所有两位绝对素数。settalkoffform=11to99n=mod(m,10)*10+mod(int(m/10),10)ifcheck(m)andcheck(n)?mendifendforfunctioncheckparametersaflag=.t.k=int(sqrt(a))j=2dowhilej=kandflagifmod(a,j)=0flag=.F.endifj=j+1enddoreturnflag7..用过程方式求S=A!+B!+C!(其中A,B,C从键盘输入)。settalkoffinput请输入第一个数到Atoainput请输入第一个数到Btobinput请输入第一个数到Ctoc?S=A!+B!+C!=,ss(a)+ss(b)+ss(c)functionssparameternm=1fori=1tonm=m*iendforreturnmreturn8..根据题目要求完善程序。(1).通过字符串操作竖向显示“伟大祖国”,横向显示“祖国伟大”。SET.TALK.OFFSTORE.″伟大祖国″.TO.varCLEARn=1DO.WHILE.n8?.SUBSTR(①)n=n+2ENDDO?.(②)??.SUBSTR(var,1,4)RETURN①var,n,n+1②substr(var,5,8)(2).对学生表,按入学成绩降序显示前10名和按升序显示后10名学生的入学成绩。SET.TALK.OFFUSE.学生INDEX.ON.入学成绩.TAG.cjsy.DESCn=1CLEAR@1,20.SAY.″前十名成绩:″DO.WHILE.n=10DISPn=n+1(③)continueENDDOWAIT.″″CLEAR@1,20.SAY.″后十名成绩:″n=1(④)gobottomDO.WHILE.n=10DISPn=n+1SKIP.-1ENDDOUSESET.TALK.ONRETURN.Continuegobottom第十章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.建立一个航班表:航班(城市名,航班号,时间,价格)该表中包含去北京、上海、广州、哈尔滨等4个城市的航班信息(一个城市可能有多个航班)。设计一个航班查询表单,要求:使用选项按钮组表示城市,用表格显示查询结果。不设命令按钮,当选中某个选项按钮时,表格立即显示该城市的查询结果。5.设计一个使用列表框和表格的表单,要求:列表框与学生表关联,表格与选课表关联,并且,当选中列表框中的某个记录时,表格中显示该学生的选课信息。6.在第4题的基础上,再建立一个列车表:列车(城市,车次,开车时间,到达时间)该表中包含开往北京、上海、广州、哈尔滨等4个城市的车次情况。建立一个包含两个页面的页框,其中第一个页面查询航班信息,第二个页面查询列车信息,其他要求与第4题相同。第12章1.菜单由哪几部分组成?常规的菜单系统一般是一个下拉式菜单,由一个条形菜单和一组弹出式菜单组成。1.简述菜单文件与菜单程序的区别与联系。菜单文件是菜单设计器中用户定义的保存文件。而菜单程序则是最后用户看到的菜单所对应的程序代码文件,可以在菜单设计器中用生成命令把菜单文件转化为对应的菜单程序。两者都是对菜单的描述,只不过描述的层次不同而已。2.什么是快速菜单和快捷菜单?两者有何区别?“快速菜单”主要是为了能让用户方便快速地设计菜单的一种方法,选择“快速菜单”命令后,一个与VisualFoxPro系统菜单一样的菜单会自动复制到菜单设计器窗口,供用户修改成符合自己需要的菜单。这种方法能快速建立高质量的菜单。快捷菜单是一种单击鼠标右键才出现的弹出式菜单,快速菜单是一种快速生成菜单的方法,而快捷菜单是菜单中的一个分类。4.利用菜单设计器为“学生管理系统”建立一个下拉菜单。其具体要求如下:(1)条形菜单包含“查询”、“数据维护”、“打印”和“退出”4个菜单项;(2)其中“数据维护”下拉菜单又包含“浏览记录”、“修改记录”和“按字段修改”等菜单项,设置“浏览记录”的快捷键为CTRL+X;(3)其中“打印”下拉菜单又包含“学生档案表”和“学生成绩表”两个菜单项;(4)单击“退出”菜单命令,可退出本“学生管理系统”程序,并自动恢复VisualFoxPro的系统菜单。5.在以上菜单系统中加入系统的“编辑”下拉菜单和“打印预览”菜单项。6.创建并设立顶层菜单。7.为一个表单建立一个快捷菜单,鼠标右键单击该表单时弹出快捷菜单,快捷菜单中的“浏览”选项可以浏览学生表。第13章1.报表的主要功能是什么?报表的主要功能是为了能更加灵活方便的输出数据。不但可以像查询、表单那样够浏览数据记录外,还能控制打印输出数据记录的格式。2.报表和表单的区别在哪里?表单能让用户按另一种形式在屏幕上查阅数据表中的数据记录,实用性非常的很强,不但能用它来简化浏览窗口,还能更直观的显示和浏览数据、并且可按用户所喜欢的风格来显示记录,以及通过一组控制按钮更方便、更加容易地控制和使用数据记录。报表除了能像查询、表单那样够浏览数据记录外,还能控制打印输出数据记录的格式,并且允许将各种格式的文本与图形对象组合在一起输出,从而建立起清晰的、图文并茂的报表。3.报表包括哪几个基本组成部分?报表主要由两部分组成:数据源和报表布局。数据源是报表的数据来源,报表布局则定义报表打印格式。4.报表控件是指的什么?报表控件是显示在报表上的,用来配合报表来向用户输出更多更灵活的内容如图形、图象、表达式等。3.什么是标签?标签与报表的区别是什么?标签是一种特殊的报表,它的创建、修改方法与报表基本相同。两者之间主要的不同是标签设计器基于所选标签的大小自动定义页面和列。4.在定义一个表、一个视图或查询之前,可以创建报表或标签吗?不可以,因为创建报表时必须要有数据源。7.有一个教职工表:教职工(编号,姓名,性别,出生日期,籍贯,民族)完成下列操作:(1)建立一个教职工表,其中的数据自定;(2)快速生成一个报表;(3)利用报表向导设计一个报表;(4)利用报表设计器设计报表;(5)在屏幕上预览报表输出格式;(6)利用教职工表创建一个标签。第14章1.说明在

1 / 9
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功