VFP专升本综合练习题1

更新时间:2024-02-27 02:24:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

综合练习题(一)

在以下各题中,有的要用到数据库文件RYQK.DBF和GZ.DBF,其文件内容分别如下(不考虑前面程序运行影响) RYQK.DBF数据库结构为: 职工编号(C,4)、姓名(C,6)、性别(C,2)、出生日期(D,8)、部门(C,6)、职务(C,6)、婚否(L,1) 职工编号 1001 3001 3002 2001 2002 1002 姓名 李军 赵丽 黄小平 王辉 王刚 李平 性别 男 女 男 男 男 女 出生日期 部门 职务 主任 干事 副主任 部长 干事 秘书 婚否 .T. .F. .F. .T. .F. .F. 1973-09-10 办公室 1982-12-12 人事处 1983-05-18 办公室 1964-09-24 组织部 1980-01-19 人事处 1979-11-12 人事处

GZ.DBF数据库结构为: 职工编号(C,4)、基础工资(N,6,1)、岗位津贴(N,5,1)、奖金(N,5,1)、水电费(N,5,1)、实得工资(N,7,1) 职工编号 1001 1002 2001 2002 3001 3002 基础工资 800 500 1000 600 600 700 岗位津贴 337 166 477 175 175 195 奖金 100 70 80 50 100 70 水电费 39 20 26 99 74 19 实得工资 0 0 0 0 0 0 一、阅读程序题

阅读下列程序,将正确的运行结果填到答题纸的对应题号处。 1. SET TALK OFF X=?XX? Y=?YY? XX=12 YY=24 ?&X+&Y RETURN 36

2. SET TALK OFF SET HEADING OFF USE RYQK GO 3 DISPLAY 姓名 OFF

USE RETURN 黄小平

3. SET TALK OFF SET HEADING OFF USE RYQK INDEX ON 职工编号 TO ABC SKIP 3 COPY TO QAZ NEXT 2 USE QAZ GO TOP DISPLAY 姓名 OFF USE RETURN 王刚

4. SET TALK OFF USE RYQK INDEX ON 姓名 TAG SM FIND 王 SKIP ?RECNO() USE RETURN 4

5. SET TALK OFF SELECT 2 USE GZ INDEX ON 职工编号 TAG XH OF ZGBH SELECT 1 USE RYQK SET RELATION TO职工编号 INTO B LOCATE FOR 部门=?人事处? SELELCT B ?RECNO() CLOSE ALL RETURN 5

6. SET TALK OFF SET HEADING OFF SELECT 1 USE GZ SELECT 2 USE RYQK JOIN TO STU WITH A FIELDS 职工编号,姓名,A.基础工资 FOR 职工编号=A.职工编

号 USE STU GO BOTTOM DISPLAY OFF CLOSE ALL RETURN

1002 李平 500.0 7. SET TALK OFF USE GZ LOCATE FOR AT(?3?,职工编号)=1 DO WHILE .NOT. EOF() REPLACE 奖金 WITH 奖金+50 CONTINUE ENDDO GO TOP SKIP 2 ?职工编号,奖金 USE RETURN 3002 120

8. **主程序文件K1.PRG清单如下: SET TALK OFF SET PROCEDURE TO SUB H=0 DO K2 WITH H,5 ?H SET PROCEDURE TO RETURN **过程文件SUB.PRG清单如下: PROCEDURE K2 PARAMETERS X,Y X=(Y+5)**2 RETURN 100.00

二、完善程序题

将下列程序___________处的正确内容填到答题纸的对应题号处,使程序完善、正确。 1. 显示RYQK库中的第1~3号的纪录信息。 SET TALK OFF USE RYQK DISPLAY NEXT 3 USE RETURN

2. 求GZ库中的所有职工的实得工资。

3. 4. 5.

SET TALK OFF USE GZ S=0 SCAN REPLACE 实得工资 WITH 基础工资+岗位津贴+奖金-水电费 __S=S+实得工资_________ ENDSCAN

??实得工资为:?,S USE

RETURN

在RYQK库中将职务为“干事”的纪录其职务改为“副部长”。 SET TALK OFF USE RYQK

DO WHILE .NOT. EOF() IF职务=?干事? REPLACE 职务 WITH “副部长” SKIP ENDIF ENDDO USE

RETURN

该程序可以输出任意输入的20个数中的某一个序号所对应的数。 SET TALK OFF DIMENSION A(20) FOR J=1 TO 20 INPUT ?请输入任意一个数? TO A(J) ENDFOR

INPUT ?请输入序号:? TO NN ? A(NN) RETURN

下面程序用于将变量M1、M2由小到大排序。 SET TALK OFF

INPUT ?M1=? TO M1 INPUT ?M2=? TO M2 IF M1>M2 T=M1 M1=M2 M2=T ENDIF ? M1,M2 RETURN

6. 7. 8.

比较GZ库中每个职工的实得工资,并显示其中的最高值。 SET TALK OFF USE GZ

MAX=基础工资+岗位津贴+奖金-水电费 DO WHILE .NOT. EOF() IF MAX<基础工资+岗位津贴+奖金-水电费 MAX=基础工资+岗位津贴+奖金-水电费 ENDIF __SKIP ________ ENDDO

? ?MAX=?,MAX USE

RETRUN

任意输入30个数,求其和。 SET TALK OFF N=1 S=0

DO WHILE .T. INPUT ?请输入X的值:? TO X S=S+X N=N+1 IF N<=30 LOOP ENDIF _EXIT__________ ENDDO ?S

RETRUN

输出100到1000之间能被9整除的数,每行输出6个数。 SET TALK OFF X=100 N=0

DO WHILE X<=1000 IF MOD(X, 9)=0 ??X N=N+1 IF INT (N/6)=N/6 ? ENDIF ENDIF X=X+1 ENDDO

本文来源:https://www.bwwdw.com/article/8ela.html

Top