vfp程序例题

2024-12-27

vfp程序例题(共8篇)

vfp程序例题 篇1

VFP程序题 第一套题

一、运行结果题

1、以下程序运行结果是

SET TALK OFF

CLEAR

A = 5

B = 12

C = 18 IF MAX(A , B)< C

? MAX(A, B)

ELSE IF MIN(A , B)< C

? C

ELSE

? MIN(A , B)

ENDIF

ENDIF SET TALK ON

RETURN

2、以下程序运行结果是

SET TALK OFF CLEAR USE STCJ

DO WHILE ,NOT, EOF()

REPLACE 总分 WITH 高数 + 计算机 + 英语 SKIP

ENDDO GO BOTTOM

? 学号,总分

USE

RETURN

3、以下程序运行结果是

SET TALK OFF

SET HEADINGS OFF SELECT 2 USE STCJ

INDEX ON 编号

TO GZ21

REPLACE ALL 总分

WITH 高数 + 计算机 + 英语 SELECT 1 USE STDA

SET RELATION TO 编号

INTO B DISPLAY FIELDS 姓名,B.总分

FOR 四级通过

OFF CLOSE ALL RETURN

4、以下程序运行结果是

SET TALK OFF SET SAFETY OFF USE STDA INDEX ON 民族

TO XBSY TOTAL ON 民族

TO GZHZ USE GZHZ COUNT TO N ? N

SET SAFETY ON SET

TALK

ON RETURN

5、以下程序运行结果是

SET TALK OFF SET DELETED ON USE STDA DELETE FOR 性别 = “ 男 ” COUNT TO A SET DELETED OFF COUNT TO B DELETE ALL PACK COUNT TO C ? A , B , C SET TALK ON RETURN

6、以下程序运行结果是

SET TALK OFF USE STDA

INDEX ON 奖学金

TO GZSY SKIP 2

? 姓名,奖学金 USE

SET TALK ON RETURN

7、以下程序运行结果是

SET TALK OFF

SET PROCEDURN TO SP S = 0

DO SP1 WITH 5 , S ? S

SET TPROCEDURE

TO RETURN * SP PRG PROCEDURE

PARAMETERS X , Y N = 1 Y = 1

DO WHILE N < X

Y = Y + N

N = N + 1

ENDDO

RETURN

8、以下程序运行结果是

SET TALK OFF DIMENSION X(2 ,2)X = 5 FOR I = 1 TO 2 FOR J = 1 TO 2 IF I = J

X(I , J)ENDIF ?? X(I , J)ENDFOR ENDFOR SET TALK ON RETURN

二、完善程序

1、下列程序计算机 S =1!+ 2!+3!+4!+5!中,填空完成程序。

S = 0 FOR N = 1

TO 5

FOR I = 1 TO N

P = P * I

ENDFOR

ENDFOR

? “SUN =” , S

2、用下列程序找出所有的水仙花数,所谓水仙花数,是指这样一

个三位数,其各位数字的立方和等于该数本身,如 153 = 1^3 +5^3 +3^3,对以下程序填空完成该功能。FOR N = 100 TO 999

A = INT(N / 100)

B =

C = N – INT(N / 10)* 10 IF N = A^3 +B^3 +C^3

? N

ENDIF

ENDFOR

RETURN

3、将新表 DB2.DBF 文件中学号重复的记录删掉(只保留一个)SET TALK OFF SET SAFETY

OFF

USE STDA

COPY TO DB2 USE DB2

INDEX ON 学号

TO XH DO WHILE.NOT.EOF()XH = 学号 SKIP

DELETE ENDIF ENDDO

CLEAR ALL

4、显示STDA.DBF 文件中男同学的记录

SET

TALK

OFF

SET

HEADING

OFF

USE

STDA

DO

WHILE

.NOT.EOF()

IF

ENDIF

DISPLAY

WAIT

ENDDO

USE

SET

TALK ON

RETURN

5、将STDA.DBF 表中未通过英语四级考试学生的将赏金取消,通过者奖学金加50元,并显示姓名和奖学金额。SET TALK OFF

CLEAR USE STDA DO WHILE.NOT.EOF()IF.NOT.四级通过

REPLACE 奖学

WITH 0

ELSE

? 姓名,奖学金

ENDIF

SKIP

ENDDO

USE

SET TALK ON

RETURN

6、按学号查询成绩

SET TALK OFF CLEAR SELECT 1 USE STDA

INDEX ON 学号 TO IXH SELECT 2 USE STCJ

INDEX ON 学号 TO ICJ

ACCEPT “请输入查询学号:” TO XH SEEK

XH IF

FOUND()

DISPLAY

学号,A->姓名,总分

ELSE

? “ 查无此人!”

ENDIF

USE RETURN

7、请阅读下列判断一个自然数是否为质数的程序,并将程序填写完整。

SET

TALK

OFF

INPUT

“ 请输入一个大于1 的自然数:”

TO N

K = 0

J = 2

DO

WHILE

J < N IF MOD(N , J)

J = J +1

LOOP

ELSE

K = 1

EXIT

ENDIF

ENDDO

IF

K = 0

?

+ “ 素数”

ENDIF

? “ 再见!” SET TALK ON

RETURN

8、修改数据表文件 STDA.DBF 中指定同学的四级通过情况。SET TALK OFF USE STDA

INDEX TO ISY

DO

WHILE.T.CLEAR

ACCEPT “ 输入待学生的姓名” TO XM SEEK XM

IF

FOUND()

@ 10 , 10 SAY “ 修改” + XM + “ 的四级通过情况:” GET 四级通过

WAIT

“ 继续修改?(Y / N)”

TO N IF

ENDIF ENDDO USE RETURN

9、将数据表文件STDA.DBF 中的第三条记录与第四条记录的内容互换,并显示第三条记录。

SET

TALK

OFF

CLEAR

USE

STDA

GO

SCATTER

TO

A

GO

SCATTER

TO

B

GO

GATHER

FROM

B

DISPLAY

GO

USE

SET

TALK

ON

RETURN

10、如下程序根据键入的学号使用SQL SELECT 语句显示学生的学号、姓名和平均成绩。请在下划线处填写适当的内容,使程序能正确的运行。

DO

WHILE.T.CLEAR

ACCEPT

“请输入学号:” TO KEYNO

SELECT

STDA.学号,姓名,(高数 +计算机 +英语)/3 AS平均成绩;FROM STDA.STCJ WHERE

WAIT

“如果退出,请按【Y】键!”

TO KEY

IF

UPPER(KEY)= “ Y”

ENDIF ENDDO USE RETURN

三、程序改错题

1、在STDA.DBF 中,查询某人英语四级通过情况,若通过了,则授予学位,否则不授予学位。(1)SET

TALK OFF(2)USE

STDA

(3)ACCEPT “请输入姓名:”

TO XM(4)SEEK

FOR 姓名 = XM(5)IF

EOF()

(6)? “查无此人!”(7)RETURN(8)ENDIF

(9)IF

英语四级通过

(10)?姓名 + “英语四级通过,授予学位”(11)ELSE

(12)?姓名 + “英语四级没通过,不授予学位”(13)ENDIF(14)USE

(15)SET

TALK

ON(16)RETURN 错误的行是 改为:

2、显示 STCJ.DBF 中总分不低于190分的所有学生的姓名和总分字段的值。

(1)

SET

TALK OFF

(2)

SET

HEAD

OFF

(3)

USE

STCJ

(4)

DO

WHILE

RECNO()< = RECCOUNT()

(5)

REPL

总分

WITH

高数 +计算机 +英语

(6)

IF

总分> = 190

(7)

DISP

学号,总分 OFF

(8)

ENDIF

(9)

LOOP

(10)

ENDDO

(11)

RETURN 错误的行是: 改为:

3、在STDA.DBF 中,快速查询性别为“男”,“09/12/92”出生的人

(1)

SET

TALK OFF

(2)

USE

STDA

(3)

INDEX

ON 性别 +入学时间

TO LKL

(4)

SEEK “男” + “09/12/92”

(5)

IF

.NOT.EOF()

(6)

DISPLAY

(7)

ELSE

(8)

? “查无此人!”

(9)

ENDIF

(10)

USE

(11)

SET

TALK ON

(12)

RETURN 错误的行是: 改为:

4、求出 STCJ 表中总成绩的最大值和最小值。(1)

SET

TALK

OFF

(2)

USE

STCJ

(3)

DO

WHILE

.NOT.EOF()

(4)

REPLACE

总分

WITH 高数 +计算机+英语

(5)

SKIP

(6)

ENDDO

(7)

GO

TOP

(8)

STORE

总分

TO MAX , MIN

(9)

DO

WHILE

.NOT.EOF()

(10)

IF MAX >总分

(11)

MAX = 总分

(12)

ENDIF

(13)

IF MIN <总分

(14)

MIN = 总分

(15)

ENDIF

(16)

SKIP

(17)

ENDDO

(18)

? “最高分:” ,MAX ,”最低分:” , MIN

(19)SET

TALK

ON

(20)RETURN 错误的行是: 改为:

第九套题

一、完善程序题

1、将“职工”表中的数据按工资降序排列后生成新表,程序如下:

CLOSE

ALL

SET

TALK

OFF CLEAR USE 职工

TO 职工1 ON

工资/D USE 职工1 DISPLAY ALL USE

RETURN

2、在“职工”表中查找且显示“孙大鹏”的信息,程序如下:

SET TALK OFF CLEAR USE 职工 LOCATE

IF

FOUND()DISPLAY ENDIF USE

3、显示“职工”表中女职工的工资和,程序如下:

SET

TALK

OFF CLEAR SELECT

FROM 职工 RETURN

1、设计一个查询表单BD.SCX,其界面如图所示,其中文本框控件

名为TEXT1,表格控件名为GRID1。当在其中输入职工姓名并单击“查询”按钮时,将下边的表格内显示该职工的信息。“查询”按钮的Click 事件代码应如下:

THISFORM.GRID1.RECORDSOURCETYPE=4

THISFORM.GRID1.FRCORDSOURCE=”SELECT

* FORM 职工

WHERE

姓名

= = ”

5、将“职工”表中第6条记录的“出生日期”改为“12/12/1972”,程序如下:

SET TALK OFF CLEAR USE 职工 SKIP 5

出生日期

WITH {^1972/12/12} DISPLAY USE

RETURN

vfp程序例题 篇2

1 小球移动运行界面

在Visual FoxPro 6.0程序设计的教学中,利用案例教学法给学生介绍了数个趣味程序的设计,而小球移动便是其中的一个,该程序利用表单设计,其运行界面如1所示。

单击“移动”按钮,小球随机选择一个方向直线移动。小球的移动方向共8个:东、东南、南、西南、西、西北、北、东北,移动方向通过随机函数自动产生,小球沿此方向移动到窗口边框时,不会移出到窗口外,重新计算移动方向,向窗口内移动。在移动过程中,单击“停止”按钮,暂停移动;单击“红色”按钮,小球变成红球;单击“绿色”按钮,小球变成绿球。

2 表单设计

2.1 新建表单

在Visual FoxPro 6.0的集成环境中,新建一个表单文件,其属性值如下:AutoCenter=.T.;Caption="小球移动"。

在表单中新建一属性direction,代表小球移动的方向。

2.2 添加控件

在该表单的界面上,有表示小球的Shape控件、控制时间的Timer控件和5个命令按钮控件。

2.2.1 添加小球––Shape控件

在表单上添加一个Shape控件,该控件表示小球,其属性值如下:Name=Shape1;BackColor=RGB(255,0,0);Curvature=99。

2.2.2 添加时钟––Timer控件

为了使程序有时间间隔,必须在表单上添加一个时钟Timer控件,其属性值如下:Name=Timer1;Enabled=.T.;Interval=200;Height=25;Width=25。

2.2.3 添加命令按钮控件

在表单上添加5个命令按钮,用于小球的移动(cmdMove)和停止(cmdStop)、小球变红色(cmdRed)和绿色(cmdGreen)、关闭(cmdClose)程序,其Caption属性值分别是“移动”、“停止”、“红色”、“绿色”和“关闭”。

至此,表单设计如图2所示。

2.3 主要的事件代码

下面只给出Timer1控件的Timer事件的程序代码。

3 结束语

兴趣教学是我们一直追求和不断探索的一种教学方式,认真选择一些趣味性的小程序作为教学案例,可以把学生吸引到课堂上来,并通过这些趣味案例的学习,提高学生的程序设计能力。

摘要:兴趣是学习的最好老师。在程序设计课程教学中,适当地引入一些趣味程序的案例,不仅可以激发学生学习的积极性,而且也能提高学生的编程能力。该文以Visual FoxPro 6.0为开发工具,利用表单设计方法,使用VFP提供的相关控件,编写出小球移动趣味程序。

关键词:Visual FoxPro6.0,表单,控件

参考文献

[1]何明瑞.数据库原理及Visual FoxPro6.0实用教程[M].上海:浦东电子出版社,2003.

浅析VFP程序设计教学的方法 篇3

关键词:数据库;多媒体;案例;可视化

中图分类号:G642

文献标识码:A

文章编号:1000-8136(2009)29-0096-02

Visual FoxPro作为数据库管理语言对于高职院校的学生而言具有相对的易学性,其数据库设计与开发、操作的可视性、程序语言的面向对象性,是它的特点,也是学生建立学习兴趣的所在,但也是VFP教学与学习过程中的3个难点。在学习可视化开发过程中,随着设计环境的改变,出现不同的窗口和大量控件及属性图标,记忆与使用起来较复杂;而在开始学习面向对象编程时,比较抽象,有一定的学习难度。在一个学期内解决好这些问题,是任课教师所面临的一大挑战,针对VFP的特点、难点和传统教学的缺陷,我们在VFP的教学中采用了以下方案。

1 尽量使用投影仪或者在计算机多媒体教室中进行教学

在计算机教室中安装好各种教学软件,如极域电子教室等,教师在教师机上使用与讲授VFP各种对象的可视化操作,学生在自己面前的学生机上可清晰地看到老师的操作过程,可以直观地理解VFP的各个菜单命令的使用方法和操作结果。这样的教学方式,可以极大地缩短学生接触与熟悉理论知识的时间,在有限的课时内,可以更多地进行实践操作与练习,与教师有较多的时间解决学习中的具体问题,能够进行更多的交流,从而达到事半功倍的教学效果。此外,为了更有效率地对学生进行练习,解决VFP内容多、课时少的矛盾,教师还可将相关的课件、VFP试题库存入教学机内让学生自主学习。

2采用一个典型的实用案例

如《学生信息管理系统》贯穿整个教学过程。这是一个学生身边的案例,学生通过它能够较容易地理解数据库的模型结构,能体会到数据表之间的关系,在初学阶段,学生能激发起较强的学习兴趣。所使用的案例系统、结构分为学籍管理和成绩管理2个子系统,各部分即独立又有显而易见的联系,学生易于建立结构,各功能要简单而实用,要分别实现信息及成绩的浏览、查询、修改等,学生易于明白所学重点,又为进一步的提高打好基础。这个案例使用了VFP各个知识点,从建立项目始、数据库表建立、查询视图建立、报表标签、表单到菜单的建立,其间融入了程序代码设计、表间关系的设定、各种对象的可视化属性的设置,锻炼学生分析设计各功能模块、理解解决的问题的思路、掌握相关知识内容,从少积多,在学生学习过程中形成一个能够初步解决实际问题的项目。在实际教学中通过案例教学,弱化了VFP的单纯理论教学方法,强化了学生对知识的可见性与可操作性,在学习上有了更多的主动性与灵活性;学生既从微观上掌握了VFP各个知识点的作用,又能在宏观上体会到各功能的有机联系,在学习中逐渐掌握数据库管理系统的开发方法和步骤。在课程实训阶段,要求学生仿照所学内容,设计一个管理信息系统,给出具体的设计要求,如职工管理系统,要求至少4个数据表以上。能够表间互相关联,能够实现某几个项目的查询,输出形式根据不同的结果采用不同的形式,同时应有友好的人机交互界面,用户登录和访问权限及系统设置功能等。通过实训,提高学生掌握与运用知识的能力,能够由一个数据库多表间的操作,扩展到多个数据库间的关联操作,综合掌握输入输出设计的灵魂——表单。

3重点学习表单的制作体现可视化开发的过程

掌握VFP表单设计技术是学习可视化开发技术及掌握面向对象的程序设计的一个重要过程,是进一步理解相关概念如对象及其属性、对象的事件及方法、类、容器、封装等的基础过程。VFP面向对象的功能在表单制作中极大地得到体现,表单的功能不再是一个简单的输入与输出界面,数据库管理功能也是在各种查询表单中实现,我们同时在表单中加入了如各命令按钮,设计了各种控制命令代码后,就可以用表单担负起一个数据库管理系统中的绝大部分功能。因此VFP应用系统实际开发过程的实现也主要是表单的制作技术。在讲述表单时,要尽可能掌握各种与实例相关的各表单的主要查询统计类型的制作步骤;而对于控件,则以介绍其常用属性的设置方法和主要事件的编码过程,其他的先暂时不提及,以免使学生感到杂乱无目的性。在表单教学中,应由表及里逐层进行。首先,创建表单。学习利用系统的表单向导建立新表单,然后再利用表单设计器创建修改表单,所建表单应至少包括普通表单和一对多两种样式。第二,练习表单的数据环境的设置。先掌握表单数据环境中表或视图的添加、移出的方法,再要求深入理解数据环境及其中各个表和视图属性的定义。第三,向表单中添加控制。用表单设计器设计一个较复杂的表单或表单集,向表单或表单集添加各种控制,并定义表或表单集以及各个控制的属性、事件与方法是我们学习VFP的重点。但表单只是一个基本的容器,必须添加一些对象,如:标签、文本框、编辑框、命令按钮等常用控制,这些控制可以灵活地进行多种排列组合,使用它们可以领略到可视化技术和面向对象设计方法的精华所在。但要真正灵活自如地使用这些控制,并不是一件简单的事情,需要必须对每种控制深入了解,能够根据设置各种控制的属性、事件和方法以及对应的控制代码。

VFP程序设计课程教学探索论文 篇4

VisualFoxPro(简称VFP)程序设计是当今很多医学院校开设的大学计算机基础课程,这门课程可以使学生建立起数据库技术的基本框架,掌握使用VFP系统进行数据处理的基本方法技能,对整体提升学生计算机应用能力有很大帮助。并且VFP程序设计也是国家计算机二级等级考试中的科目之一,因此掌握好该门课程,对于医学院校的学生非常重要。那么在VFP教学过程中如何树立先进的教学理念、采用行之有效的教学方法来取得好的教学效果,是每位任课教师都在探索的课题。

一、医学院校VFP程序设计教学目前存在问题分析

1.教学内容顺序安排不合理

由于医学院校学生所掌握的计算机基础知识非常有限,传统教学内容安排首先就是第一章数据库基础理论和第二章的常量、变量、函数等一些基本概念,这些内容理论性较强、单调枯燥,会使学生觉得该课程不易理解掌握,并且实际应用价值不大,在学习初期即产生厌烦情绪,从而影响了学生对该课程的学习兴趣。

2.教学方式存在弊端

目前,各医学院校VFP程序设计理论课程的教学普遍采用老教学模式,主要是老师在教室通过课件讲课本内容,学生看大屏幕,师生之间的互动很少。学生在课堂上注意力不集中,不听课溜号、玩手机现象比较严重,学生学习的积极性、主动性差。实验课的安排上也存在很多问题,首先学生的上机实验学时少,练习时间不够充分,而且理论课与上机课又有一定的时间间隔,通常任课教师在理论课上讲解的相关知识,学生都不能及时进行上机练习,理论与实践的脱节造成了学生听完理论课,在上机课上不知从何下手,不能很好地完成每一个实验内容,学生上实验课的效果并不理想。

3.不利于学生课后自主学习

学生在课堂上不可能对所有教学内容都能掌握,对一些章节的疑问或难点学生可能都需要在课后与老师请教或探讨,但实际做起来很困难,有时想下载老师的`课件都很不方便,这些都给学生课后自主学习带来不利影响。

二、VFP程序设计课程教学改革方法

1.教学内容顺序重新调整

首先,为了使学生一接触VFP程序设计这门课既能产生浓厚学习兴趣,任课教师要特别重视第一节课的教学。在讲第一章数据库基础理论时少讲基本理论,可以多演示一些用VFP软件开发的具体实例,如学生以后工作会用到的医院管理系统、在校时会使用的学生信息管理系统、图书管理系统以及教务管理系统等,使学生对VFP的强大功能有更直观、感性的认识,切实体会到学习这门课的现实意义。其次,把各章顺序进行调整,将原内容中的第二章VFP中的数据与运算内容放到第五章面向过程的程序设计中去,新内容的第二章直接学习数据库和表的操作,这样学生接触到VFP软件就能创建自己需要的数据库、数据表,并对数据库和表做各项操作,自然能激发起学生学习兴趣。接下来第三章安排查询与视图内容,紧接着第四章安排关系数据库标准语言SQL内容,这样首先通过第三章学习掌握了查询与视图的创建过程,然后再学习SQL的查询功能时就有了一定基础,对用SQL语句实现表的查询就不会觉得陌生。第五章面向过程的程序设计和第六章面向对象程序设计二章内容放在一起学习,可以让学生全面了解程序设计方法,对程序设计有更完整的认识。总之调整后的教学内容顺序会使教学更科学合理,更便于学生对知识的掌握,会取得更好的教学效果。

2.采取全机房授课方式

为了避免理论与实践课程的脱节,采用全机房授课方式教学。全机房授课教学可以边讲边练进行,首先学生听老师讲课(比如某个语句的格式功能),然后自己马上进行上机验证,有的操作快的同学还可以做一些扩展功能的练习,这样学生能很快掌握这个语句。这种教学方式使学生上机练习的时间增多了,同时也增强了学生的动手能力、解决实际问题能力。

3.采用案例教学法教学

案例教学法是指教师根据教学目标和教学内容,选定有代表性案例,引导学生有针对性剖析、讨论,让学生在具体情境中积极思考、主动探索,以提高学生思考问题、分析问题和解决问题等综合能力的一种教学方法。针对医学院校的学生,教师选取的案例要符合医学专业学生的特点,贴近医学领域的应用,这样学生才更感兴趣。比如教师可以把“患者住院管理系统”作为整个教学过程的设计案例,在具体教学过程中,以案例为主线,将教学内容的各个知识点融入到案例中去,使整个教学内容连贯生动。任课教师可以首先向学生介绍患者住院管理系统的总体架构,再组织学生讨论,让学生了解患者住院管理系统通常包括的子系统和功能模块有哪些,如包括住院处管理子系统、住院科室管理子系统和信息查询子系统,其中住院处管理子系统又包括:办理住院手续模块、常规检查模块、患者信息查询等模块。接下来在教学的各个章节都紧密围绕这个案例去开展,如在第六章面向对象程序设计教学中把各控件、类结合到案例中去,学生可以发挥自己的创新思维设计出各具特色的患者住院管理系统的主界面。然后在第八章菜单的设计与应用教学中设计出住院管理系统的子系统和各功能模块。这样学生通过一学期的学习,自己亲自动手完成案例的开发设计,在实践中既提高了计算机程序设计的水平,也真正体验到了学习这门课的价值和乐趣。

4.创建网络教学平台辅助教学

为了满足学生课后自主学习的需要,我们创建一个VFP程序设计课程的网络教学平台,学生可以随时登录平台系统。该平台系统有多项功能模块,如课程管理、在线学习、咨询提问,等等。通过“在线学习”功能学生可以选择自己要学习的章节内容自主学习。有疑难问题通过“咨询提问”请求老师答疑,老师在后台对学生提出的问题及时给予解答。通过“常用下载”功能随时可以下载老师的课件,最后学生还可以通过“在线测试”,对各章节进行考核,检验一下自己学习的效果。总之网络教学平台的应用既对课堂教学起到了一定的辅助作用,也提高了学生的自主学习能力。

三、结语

vfp程序例题 篇5

[程序说明]

本程序中的函数factor( m,fac,cp )用来计算正整 m ( m >2 )的除自身以外的所有不同因子的和。该函数返回因子和,并把各因子从小到大依次存放在数组 fac 中,其因子个数存入在 cp 所指的变量中。

例如 m=16,求得的因子为

(1,2,4,8)

提示:因子和为15,因子个数为4。

程序假定正整数 m 的不同因子个数不会超过100个。

[程序]

# include

# define N 100

long factor (int m,int fac[],int *cp)

{

int c1, c2 , i, k;

long s;

fac[0] = 1;

for(c1 = s = 1,c2 = N-1,____(1)____;;)

{

k = m/i;

if (____(2)____)

if (____(3)____)

{ fac[c1++] = i;

fac[c2--] = k;

s + = i+k;

}

else {

fac[c1++] = i;

s + = i;

}

i++;

if(i>=k) brdak;

}

for (c2++;c2 <= N-1;c2++)

____(4)____;

*cp=c1;

return ____(5)____;

答案:

1)3分 i = 2,或 cl + 1

2)3分 m % i == 0 (或 !(m % i) 或 m == i * k )

3)3分 i ! = k (或 i < k )

4)3分 fac [ cl ++ ] = fac [ c2 ]

答 cl ++ 给 1 分,‘ = ’左右只对一半给 1 分。

5)3分 s

1.以下不是c语言规定保留字的是( )。

(1)float

(2)integer

(3)signed

(4) unsigned

2.设int型变量x有初始值3,则表达式x++*5/10的值是( )

(1)0

(2)1

(3)2

(4)3

3.下述程序执行后的输出结果是( )

#include

main

{

int x=’f’;

printf(“%c ”,’a’+(x-’a’+1));

}

(1)G

(2)H

(3)I

(4)J

4.设有程序,整理!

#include

main()

{

int i,j;

for (i=0,j=1;i<=j+1;i+=2,j--)

printf(“%d ”,i);

}

在运行上述程序时,for语句中循环体的执行次数是( )

(1)3

(2)2

(3)1

(4)0

5.在下述选项时,没有构成死循环的程序是( )

(1)int i=100

while (1)

{

i=i0+1;

if (i>100)

break;

}

(2)for (;;);

(3)int k=1000;

do

{

++k;

}while (k>=10000);

(4) int s=36;

while (s);--s;

答案:

1.(2) 2.(2) 3.(1) 4.(3) 5.(3)

vfp程序例题 篇6

1 提高学习兴趣,增强主动参与意识

兴趣是最好的老师,兴趣是学习的巨大动力,激发学生的学习兴趣,是促进学生勤奋学习的一个很重要的因素。

V F P开设在大一下学期,学生初次接触计算机程序设计,缺乏相应的知识背景,与专业知识基本没有联系,容易使学生产生畏难情绪。带着包袱学习,使学生丧失了学习兴趣,完全是任务观点,学习纯粹是为了应试,学习比较被动。学生学完后大都不能在后继课程中使用,失去了学以致用的学习目的。

分析以上问题产生的原因,除了有学生学习方法的不当以外,教师在教学过程的设计上也存在一定的问题在教学过程中没有能给学生建立起一个完整的学习体系。VFP这门课程知识点分散,如果一味照着课本把知识点全部讲一遍,容易造成学生学完一学期,不知道这门程序设计语言究竟有什么用,感觉很茫然,像一盘散沙。因此,上好第一节课很关键,是教学成功的重要环节。

在给试点班讲授第一节课时,先给同学们演示一个小型的学生管理系统,并请同学们自己操作。该系统能完成基本的信息输入,信息浏览,信息修改,信息打印,覆盖了VFP的基本知识点。同学们通过自己操作觉得这个系统界面友好,操作简单,当得知通过一学期的学习自己也能完成类似的系统时,兴趣一下子就来了。演示完系统,还可以给学生们看一些用VFP编制的小游戏,寓教于乐,并把代码提供给学生,让他们课后自己去实践,这样学生通过实践成功地编制出小游戏后就会有成就感从而也提高了学生的学习兴趣。在第一节课还可以给学生展示一些以往学生的优秀作品,让同学们了解,同样水平的情况下,学习目标是可以达到的,激发同学们的学习兴趣,打消同学们的畏难情绪。

上好第一堂课,能使学生初步了解本课程的基本情况,使学生明确学习的目标,并能使学生产生学习兴趣。在后续授课过程中,还应该注意增强学生主动参与意识。尽管很多的课堂教学,已经运用了多媒体教学手段,通过音频、图片、视频等多种形式,将大量的信息展现在课堂上,但是仍然没有摆脱“板书式”课件和“填鸭式”的教学方法。根据以往的教学经验,教学过程中如果总是教师讲、学生听,学生容易产生疲劳情绪,也容易养成上课就等着教师讲的依赖心理。在试点班授课过程中尽可能采用互动式教学模式,互动式教学模式一般体现为课堂提问,传统课堂中教师也经常会进行提问,但所提的大都是识记型的问题,学生只需要照着书本读读就行了,而很少要求学生思考。在此次教学改革中,对提问方式进行了一定的探索,尽量改变传统的提问方式。例如在讲解两个变量内容互换时,笔者提问,一杯可乐,一杯雪碧,两个杯子的饮料要交换一下该怎么办,问题一提,同学们很快想到了再找一个杯子,也就是借助于第三变量。学生跟着教师的问题转,在思想上形成一定的紧迫感,通过同学们回答、教师解析归纳学生能够很好地理解变量交换,也容易记住交换顺序。在讲解排序问题时,讲明排序原理后,又请同学们思考如何将数列逆序,引导同学发散思维。在提问中,教师可以有意识地留下空白或有不完善之处,让学生修改。

2 综合使用任务驱动和案例教学,注重知识点的联系形成知识体系

任务驱动教学法是指在教学过程中以一个或多个项目为主线来展开教学,把相关的知识点融入到任务的各个环节中去,逐层推进任务。通过对问题的分解细化,得到一个完整的任务解决方法,从而达到学习知识、培养能力的目的。在上第一节课时,先给同学们演示一个学生管理系统,告诉他们学完这门课,每个同学都可以自己做一个系统。这样一来,极大地提高了同学们的学习兴趣。在后续的授课中,将整个系统进行分解,每个部分作为一个任务逐一讲解,学生得到清晰的思路、方法和知识的脉络。随着一个个任务的完成,学生通过自己的努力会不断地获得成就感,从而更大地激发他们的求知欲望,逐步形成一个良性循环。在整个任务解决的过程中,能够培养学生独立思考,自主学习的能力。

案例教学法是指教师在教学过程中,以真实的生活情境或事件为题材,通过“提出问题—分析问题—引入新知识点—解决问题—总结知识点”这种教学模式,把相关的基本概念、解题的基本方法和思路传授给学生,从而使学生形成深刻、形象、牢固的记忆,这种教学方法可以激励学生主动参与学习活动。在案例的选择过程中,可以从不同专业的需求性出发,例如,针对工商管理专业,既需要数据库储存大量数据,又需要对数据进行统计分析,因此就选择了利用VFP和Excel两种软件结合进行统计数据处理的案例;针对外语等专业,应注重文档的操作,选择了VFP数据库内容输出到Word文档和VFP制作动态教学课件等案例;而对于理工科学生,选择了利用VFP程序设计语言和SQL Server数据库技术结合起来设计小型数据库系统的案例。

例如,在讲解条件分支时,就以生活中工资完税为例,假设2000元以下免税,2001~5000元缴纳5%,5000元以上10%。请同学们根据不同的工资收入来计算应该交纳多少税额。同学根据表格很快就理解了多条件分支,见表1。

再例如,在讲授数据表内容替换的时候,给同学举例,假设要给学生成绩表中的所有同学加分,女生加5分男生加3分。同学们听到加分兴致都很高,都积极动脑筋想办法。回答可以打开替换对话框分别给男女生加分。有了这个答案后再给同学们提要求,要求一次就完成修改,一些基础较好的同学就想到用iif操作,replace cj with iif(xb=“女”,cj+5,cj+3)。通过案例教学,使同学们能很好地将知识融入问题中,从而很好地理解知识并将问题得到解决。

3 强化实践教学环节,加强实验管理

Visual Fox Pro是一门实践性很强的课程,上机实践能使学生消化和巩固课堂所学知识,培养学生的动手能力和创新能力。通过上机编程,学生能运用所学知识解决实际问题。这样,才能深刻地理解VPF,从而快速地掌握数据库系统。

根据以往的教学经验,学生在实践环节容易出现以下问题:

(1)准备不充分,上机效率低。学生习惯于“等,靠,要”,不积极思考。

(2)不能举一反三,题目换种形式就不会做了。

(3)遇到问题就放弃,造成问题积压。

为此,在试点班进行教学改革时,要求学生上机实验前做到:

(1)明确实验目的,熟悉实验内容等。

(2)事先准备好上机素材。准备好数据表。

(3)事先写好程序初步框架。

除了对学生做出要求,还对教师提出以下要求:

(1)精心安排上级实验内容,选例经典,避免重复。设计时应尽量采用一些趣味性较强的题目进行练习,例如,在讲解多重循环时,引用了一个我国古代数学家张丘建在《算经》中曾提到了著名的“百钱买百鸡”问题,该问题是:一只公鸡5元,一只母鸡3元,3只仔鸡1元,若用100元恰好买100只鸡,则公鸡,母鸡,仔鸡各多少只?我们可以采用穷举法,利用计算机运算速度快的原理,运用多重循环解决。并将这个问题派生出一系列类似的题目。

(2)上机前,把容易出错的地方先全班讲解,避免不必要的大面积出错。例如,讲到计时器时,好多同学容易忘记设置INTERVAL属性值,致使计时器不工作。上机前先做全班提示。

(3)上机时,注意学生出现的问题,如果是个别同学出现的问题就个别指导,如果出错面比较大,就全班讲解。

(4)上机结束前,全班检查完成情况,并记录成绩,让同学们有一定的学习紧迫感。

(5)上机结束时,注意总结本次实验中出现的一题多解,请同学自己讲解题思路,拓宽同学们的思路。例如,画杨辉三角形时,有同学用的是数组,有同学就是单纯用循环,分析两种画法,让同学们掌握一题多解的本领。

4 改革考试模式,建立以培养学生应用能力为主的教学评价体系

教学内容和教学方法的改革必然会牵动教学效果评价手段的改革,以往VFP程序设计课程的考核方式一般是通过期末笔试方式进行,这种方式带有一定的片面性,学生实际动手编程能力得不到体现。这种考试方法往往导致了“临时抱佛脚”等不良现象的出现,阻碍了学生学习探索的动力,学生纯粹是为了应试。有些学生尽管在考试中成绩优秀,但却是死记硬背,不能很好地理解和灵活应用。因此,为了解决这个问题,改革教学评价体系显得尤为重要。在本次的教学改革中我们采用了全程化(平时考核、期中考核、期末考核)、立体化(课堂听讲、网上作业、上机实验)和标准化(等级考试)相结合的办法,提高实践课程在考核中所占的比例。

具体做法是:

(1)增设平时考核、期中考核防止积重难返。

(2)综合评定学生平时成绩。平时成绩由出勤、平时课堂问答、网上作业和上机表现综合评定。体现立体化的考核标准。

(3)要求学生参加等级考试,检验自己的学习水平。

随着教改的深入,今后考核方式逐渐要以上机考试为主,将不断完善试题库,学生在试题库中抽取试题完成考试。这样题型多样,实现对必备知识和上机操作知识的考核,而且可以让参加上机考试的每位同学抽取不同的试题,避免学生互相交流、作弊等现象。

5 利用网络,开展研究性学习

为了鼓励学生开展研究性学习,还应充分利用网络优势。我们使用了网络教学平台,该平台包括经典算法的动画演示、常见问题解答、优秀编程作品展示、授课录像、练习系统等栏目。学生在上机过程中可以把遇到的问题发布在论坛上,定期由教师解答,教师通过E-mail和QQ进行网上答疑辅导,增强教学的实效性,避免了问题的积累。教师还可以把平时碰到的一些好的学生作业发布在论坛上,供学生参考学习。经过几年的教学改革和探索,学生对数据库及其常用概念,基本理论和术语的理解较为深刻,学生的上机效率明显得到了提高,学生的实际动手能力明显好于往届学生。学习能力的提高有助于学生今后更好的解决新问题,学习新知识。参与教学改革的试点班级在等级考试通过率以及上机成绩上明显好于其他平行班级。这种做法使学有余力的同学得到了更好的锻炼,也让学习中等的同学得到了提高,达到了因材施教,分层教学的效果,并得到广大学生的好评。

参考文献

[1]萨师煊,王珊.数据库系统概念(第3版)[M].北京:高等教育出版社,2000

[2]施佺,陈建平.VFP程序设计课程教学的实践与探索[J].电气电子教学学报,2005.3:33~36

[3]龚沛曾.“Visual Basic程序设计”国家精品课程建设[J].中国大学教学,2004,9:10~12

vfp程序例题 篇7

随着近年来我国成人高等教育事业的高速发展, 各高职院校的成人教育办学规模逐年扩大。在册学生数量也随之增加。少则几千, 多则上万的在册函授学生数量对函授教学管理提出了更高的要求。但与普通的全日制学生教学管理相比较, 成人函授教学管理上很难得到更多的教学资源。成人教育办学规模与可利用的教学资源之间的矛盾从很大程度上制约了高职院校成教事业的发展。而每个院校的成教工作也是学校为社会服务的一项重要工作。为进一步提高函授教学的管理效率, 促进成人教育的健康发展, 开发一款符合高职院校函授教学管理特点的应用程序将是十分必要的。

二、高职院校成人函授教育现状与特点

1. 成人教育办学形式多、专业多。

为满足地方经济建设的需要, 高职院校一般采取本部教学与合作办学或教学点办学相结合的办学形式。教学形式上也存在着函授、脱产和业余等多种形式。办学层次上还存在着专科、本科上的区别。在开办的专业上基本覆盖本校全日制的所有专业。

2. 各专业之间发展不均衡。

因国家政策、企事业单位的要求以及就业形势的影响, 高职院校开办的各专业发展不均衡, 有的专业招生数量会非常集中, 有的专业招生却非常困难, 有的艰苦专业学生素质参差不齐。这些都对函授教学管理提出了更多的要求。

3. 函授教学管理手段滞后。

随着函授学生数量和教学点的增加, 函授教学管理手段相对滞后的问题开始显现。多数院校的函授教学管理还停留在原来的纸质办公阶段。这与目前发达的网络时代存在着很大的差距。

三、函授教学管理需求分析

从函授教学管理的过程环节来看, 整个过程从招生环节开始一般还需要经过录取、注册、分班、学习 (多次面授) 、考试 (包括补考) 毕业等一系列环节。每一个工作环节也由相对应的工作人员负责。遇到特殊情况可以进入查询调整界面进行操作。函授教学过程 (图1) 分解如下。

从函授教学过程图分析, 新建的应用程序应满足如下需求:

1. 每个函授教学的工作环节对应一个工作界面, 便于工作人员输入或查询信息。

2. 具备数据导入、导出功能, 支持与招生录取系统和无纸化考试系统挂钩, 直接批量导入新生信息、每次参加期末考试学生成绩导出参加成人高考、英语统考、期末考试等考生信息等。

3. 学生异动处理功能齐全。

4. 支持各类成绩表、点名册等各类数据报表的输出。

5. 功能强大的查询功能 (例如利用身份证或姓名等个人信息能查询每个学员所有的信息和记录) 。

6. 系统运行稳定、安全性高。界面友好、操作简单。

四、程序的设计

1. 应用程序开发软件的选择。

VFP是Visual Fox Pro的缩写, 是Microsoft公司的应用程序开发软件, 主要用于开发数据管理与运算等方面的软件。VFP是可视化数据库管理系统平台, 它提供了功能完备的工具、极其友好的用户界面、简单的数据存取方式、独一无二的跨平台技术, 交肯有良好的兼容性、真正的可编译性和较强的安全性, 是目前最快捷、最实用的数据库管理系统软件之一。VFP9是该软件的最新版本, 友好的可视化界面毋需开发者编写大量的代码就能编制出实用的应用程序。VFP9对单个的程序开发者来说是一个很好的选择。

2. 项目与数据库的建立。

利用VFP9的向导功能可以轻松地建立函授教学管理程序的项目, 并在项目管理器的数据选项卡下兴建函授教学管理数据库 (图2) 。项目和数据库建立以后就是往数据库里添加不同的数据表。数据表根据反映信息不同, 可以分为学生档案表 (包括注册表) 、考勤表、平时成绩表、考试成绩表、课程安排表和任务批次表等组成。每个表包含相应的字段。例如, 学生档案表中应包括学生学号、姓名、身份证号、联系电话、家庭住址和毕业学校等一些不太变化的信息。每个表中应设立部分字段 (学号或身份证号等) 作为索引字段与其它的表建立关联。再由部分或全部关联的表形成新的视图 (虚拟表) , 这样就可以非常简单地获得全部所需的数据信息。同时又避免了数据的冗长。

3. 各环节表单的制作。

利用VFP9的表单向导可以在数据表和上述多个数据表形成的视图 (虚拟表) 的基础上形成不同功能模块的表单。根据图1函授教学过程分析应该在VFP9的项目管理器的文档/表单下兴建招生、录取、注册、班级、学习、考试和毕业等主要环节的表单。另外, 根据实际工作需要兴建方便学生异动调整和信息查询调整和查询表单, 便于更加快捷地协助工作。以下是注册表单设计的方案 (图3) 。我们选择表单左侧列表的注册批次, 右边列表对应显示该批次学生的注册信息。如需查找某一个特定的学生注册信息, 只需在调整查询表单中按姓名、或身份证号查询即可。这样一来, 学生的注册信息在程序中非常清晰地被表达出来。其它表单的制作与之大同小异, 这里不再赘述。不同的表单由不同职责的工作人员操作, 促进了管理人员的分工与协作。在提高数据准确性的同时又减轻了管理人员的工作压力。

4. 各种复杂报表 (标签) 的输出。

VFP9还提供强大的报表和标签设计功能, 方便程序开发者在较短的时间内设计出符合函授教学实际情况的报表。在项目管理器文档选项卡下的报表设计器中, 把按照数据表和视图 (虚拟表) 自动生成的报表进行简单的设计后, 符合要求的各类报表就能呈现在屏幕上并可随时输送到打印机, 可轻松制作学生的成绩表、学生名册等各类报表。标签的设计功能也可以帮助程序开发者快速设计出符合要求的学生证、准考证等打印模块, 减少工作人员的重复劳动。

5. 数据的导入与导出。

VFP9提供强大的数据导入和导出功能, 在项目管理器的数据选项卡上打开函授教学管理数据库并选择其中的一个表 (例如学生档案表) 浏览, 通过数据菜单下的追加记录, 子菜单就可以与预先制作好的EXCEL等格式的数据导入到程序中。通过运行查询表单上查询功能复合要求的数据, 就能从工作栏中的打印输出选项中导出。数据导入导出功能的实现, 极大方便了与其它程序的数据交流。例如, 函授的无纸化考试系统、招生录取系统等。

6. 各种功能按钮的制作。

为实现程序运行后在各个表单之间的切换或打开、快速地打开某个报表, Visual Fox Pro9.0可以在各个表单上添加不同功能的按钮。例如从注册界面切换到考试界面, 我们只要在报名界面中添加一个按钮, 设置该按钮的属性 (Caption) 为“考试”, 该对象的事件 (Click) 中输入:

这样当程序运行单击该按钮, 程序就会从原来的注册界面切换到考试界面。另一种快速打开“学生注册表”报表按钮的做法是:设置该按钮的属性 (Caption) 为“学生注册表”, 该对象的事件 (Click) 中输入:

if file (“学生注册表.frx”)

report form学生注册表preview else

return endif

这样当程序运行单击该按钮, 程序就会读取学生注册表报表文件, 调用系统预览程序, 预览报表。通过对这两种按钮的灵活运用, 对工作人员带来极大的方便。当然, VFP9提供更多的方法可以帮助我们优化程序。

7. 程序的编译。

根据函授教学管理的需要和实际分工不同, 所有工作界面 (表单) 和各种报表、标签设计完成以后, 就可以打开函授教学管理的项目管理器, 通过“Alt+F2”组合键打开应用程序生成器, 填写作者、单位和版本等程序相关的信息。最后通过连编实现对程序的编译, 生成*.exe的可执行文件。如果没有出现编译错误信息, “函授教学管理”程序即可投入使用。

利用VFP提供的活动文档 (Active Documents) 的功能, 实现将单纯操作系统方式下的应用系统向基于HTML的客户界面的应用程序的转变, 通过活动文档可顺利地将已经编写的应用程序移植到Web页面上, 并可将VFP的功能传递到浏览器上。如果把“函授教学管理”编译成*.app格式并把它放在服务器上, 就可以通过局域网或因特网进行浏览或操作。这比通过建立数据源调用数据表进行查询操作要直观方便的多。程序编写者可根据用户的爱好和需求设计出各种实用、漂亮的界面, 实现函授教学的远程管理。

五、结论

通过对函授教学管理过程的分析把整个管理过程分成招生、录取、注册、班级、学习、考试和毕业等主要环节, 每个环节根据需要生成对应的界面由对应的工作人员操作。通过数据库技术可大幅减少工作人员的信息输入量, 实现与无纸化考试系统等其它应用程序的数据共享, 并保证数据的准确性与一致性。与网络技术结合后实现函授教学的远程管理, “函授教学管理”程序可大幅提高函授教学管理的工作效率, 使管理逐步走向信息化。

摘要:函授教学管理过程分为招生、注册、学习和考试等主要环节, 每个环节可以根据实际需求建立对应的界面并由指定的人员操作。文章阐述了利用VFP数据库技术建立函授教学管理数据库, 实现与无纸化考试系统等其它应用程序的数据共享和远程管理, 最终实现函授教学管理的信息化, 提高管理效率。

关键词:函授,教学管理,VFP

参考文献

[1].刘瑞新, 文成林, 汪远征.《Visual FoxPro程序设计教程》[M].北京:机械工业出版社, 2002

[2].李加福, 邸雪峰, 桂敏文, 李光辉.Visual FoxPro6.0中文版入门与提高[M].北京:清华大学出版社, 1999

[3].郑刚.《Visual FoxPro6.0实效编程百例》[M].北京:人民邮电出版社, 2002

vfp程序例题 篇8

关键词:编号,VFP,学校固定资产,清查

学校固定资产是学校设立之初就必须具备的物质条件,是学校进行教育活动的物质基础,购建,积累并利用好、维护好固定资产,对学校的运转、存续和发展都有着十分重要的意义。特别是近些年来,国家对教育投入非常大,学校固定资产的管理更是重要,应改变过去那种只重视管钱,不重视管物的观念。对学校固定资产的规范化管理非常重要。

固定资产管理是一项非常艰巨的任务,它涉及面广,分散性强,工作量大,专门化要求高。固定资产管理中存在着几大难:清查难,统计难,对账难,因此固定资产的清查容易出错,出了错,将无法保证固定资产安全完整,无法建立固定资产账簿。在清查的任何一个环节出了错误,都将是一个重大的损失。

Visual Fox Pro是美国微软公司的一个数据库管理软件,它可以对各种数据进行查询、修改、提取、分类,是一个非常灵活的数据库管理软件。本程序即是基于VFP软件编写,用其进行数据整理,完全可以完成学校固定资产管理中各种报表的形成,省去人工计算、手工填写的麻烦,并且准确、迅速,能避免手工整理数据可能出现的错误,对规范化学校固定资产管理非常重要,是固定资产清查中非常得力的助手。

1 设计思路

清查的物品应遵循以下原则:价值在500元以上,或使用年限超过一年。根据以上原则,固定资产清查的流程分为自查阶段和学校相关部门复核阶段。首先各部门根据学校资产管理办公室下发的表格进行自查,把物品登记在表格当中,项目应包括以下内容:财产类别,名称,规格,单位,数量,单价,金额,保管人,使用人,存放地。清查完毕,各部门上交表格。学校组织清查小组对照自查表,进行核实,确认准确无误后,学校领导和相关部门签字,形成清查凭证,作为登记固定资产的原始凭证。

接下来,固定资产的编号,以及账册、卡片的形成,即可均由本程序完成。

学校固定资产分类有专门的分类标准,共有三级:类、项、目。类分为十大类,项和目根据各类的情况是不同的。类项目这三级标准是需要人工填写的。如801-1,8为第八类办公、事务设备及家具,01为第一项教学专用家具,1为桌台。填写完毕,就可以通过计算机用本程序进行自动处理。

填写的表格如下:

2 程序实现

上述表格填写完毕,在VFP软件中编制程序,名称为财产编号.PRG:第一步:根据财产登记对每一样财产进行登记,也就是说,每一样物品都对应着一条记录。第二步:根据学校固定资产财产编号的办法再对每一条记录进行编号。

第一步程序实现如下:

运行程序后,编号便自动生成。如下图:

编号生成后,为下一步编制各报表提供了依据。下图为该程序生成的可贴于实物上的标签编号:

3 结束语

以上程序设计为学校固定资产清查的数据处理的重要的部分,经验证,本程序在VFP6.0/7.0/8.0/9.0软件中都能运行,并且在当今流行的各种操作系统中都能正常运行。实际上,固定资产的纸质账,如:固定资产分类明细账,固定资产汇总账,固定资产统计表,固定资产分布明细表,都可以用VFP设计出来,然后进行打印存档。这些程序设计就不再一一列出。

上一篇:对父母的建议下一篇:硬膜下引流护理