急急!!!!!!!!!!
各位高手
就要参加计算机等级考试了
帮我解几道题库里的题吧
救救我
谢谢了
1。改正两处错误:
set talk off
clear
*********************************
accept "请输入数据库名:" to df
use df
index on 职称 tak jk1 desc
total on 职称 to jk2 fields 工资
use jk2
browse
use
**********************************
set talk on
return
2。设某学生成绩数据库文件data17.dbf有学号、姓名、物理、英语、数学、平均等字段,除学号和姓名两字
段为字符型外,其它字段均为数值型。gc17.prg先计算出平均分,并替换所有记录平均字段的值,
然后新建一个库文件xs1.dbf,再利用数组将平均分高于80分的10名学生的学号、姓名、
平均添加到新库中。该程序有2处错误,请调试改正。调试中不得改变程序的结构,也不能增删语句.
CLEAR
SET TALK OFF
DIMENSION pj(10,3)
USE data17.dbf
REPLACE aver WITH (phy+eng+math)/3
COPY TO ARRAY pj FOR aver > 80;
FIELDS number,name,aver
COPY STRUCTURE TO xs1 FIELDS number,name,aver
USE xs1
APPEND FROM ARRAY pj(10,3)
LIST
USE
SET TALK ON
RETURN
3。程序填空题
求S=1**2+(1**2+2**2)+(1**2+2**2+3**2)+…(1**2+2**2+3**2+…+10**2),
设计的程序名为tk17.PRG。请在该程序空白处,将其补充完整,以便得到正确答案,但不得增删原语句。
SET TALK OFF
TOT=0
FOR N=1 TO 10
T=0
M=1
DO WHILE M<N
T=(1)
M=M+1
ENDDO
TOT=TOT+T
ENDFOR
? 'S=',(2)
SET TALK ON
RETURN
4。程序的功能是在当前工作目录下查找库文件,从键盘输入要查找的库文件名(不带扩展名),
若找到,则打开该库文件,否则显示“无此库文件”。该程序中有两个错误,请调试改正。
调试中不得改变程序的结构,也不能增删语句.
SET TALK OFF
ACCEPT "输入库文件名:" TO S
S = ALLTRIM(S)
IF !FILE(S.DBF)
? "无此库文件"
S = INKEY()
CANCEL
ELSE
USE S
ENDIF
SET TALK ON
RETURN
5。程序功能是:从键盘输入任意三个数,然后调用自定义函数,找出其中最大的一个数。程序不完整,
请补充空白处,以便能得到正确答案。
SET TALK OFF
DO WHILE .T.
CLEAR
INPUT "输入第一个数:" TO M1
INPUT "输入第二个数:" TO M2
INPUT "输入第三个数:" TO M3
? M1, M2, M3
?? "中最大的数是:"
?? FMAX(____(1)___)
WAIT "还要比较吗?(Y/N)" TO M
IF UPPER(M) = "N"
RETURN
ENDIF
ENDDO
*********
FUNCTION FMAX
PARAMETER x, y, z
F = MAX(x, y, z)
RETURN ___(2)___
6。程序改错题(20分)
为一简单人事管理数据库系统设计一个屏幕格式显示文件gc62.prg,程序如下,在该程序******行之间有
2个错误,请调试改正。调试时不得增删语句。
clear
define window jw from 5,4 to 13,60 clos floa mini syst zoom
****************************
release windows jw
@ 0,1 say '┌──┬────┬──┬────┬──┬─────┐'
@ 1,1 say '│代码│ │姓名│ │性别│ │'
@ 2,1 say '├──┼────┼──┼────┼──┼─────┤'
@ 3,1 say '│年龄│ │职称│ │工资│ │'
@ 4,1 say '├──┼──┬─┴──┼────┼──┼─────┤'
@ 5,1 say '│婚否│ │工作日期│ │单位│ │'
@ 6,1 say '└──┴──┴────┴────┴──┴─────┘'
@ 1,9 get 代码 func 's(5)'
@ 1,25 get 姓名 func 's(8)'
@ 1,41 get 性别 func 's(2)'
@ 3,9 get 年龄 pict '999'
@ 3,25 get 职称 func 's(6)'
@ 3,41 get 工资 pict '9999.99'
@ 5,9 get 婚否 pict 'L'
@ 5,25 get 工作日期 func 'D'
@ 5,41 get 单位 func 's(10)'
enddo
****************************
return
7。程序填空题(20分)
下面是一个光带移动式菜单程序tk62.PRG,其中代码、姓名、职称、工作日期均是数据库中的字段名。
请在该程序空白处,将其补充完整,以便得到正确答案,但不得增删原语句。
do while .t.
set talk off
clear
set message to 20
defi wind jw01 from 1,4 to 8,50 clos floa mini syst zoom
acti wind jw01
@ 1,5 prom '0:增加记录' mess '按您的要求添加或插入记录'
@ 1,25 prom '1:修改记录' mess '修改数据库记录内容'
@ 3,5 prom '2:删除记录' mess '按您的要求逐条删除记录'
@ 3,25 prom '3:查询记录' mess '按您的要求查询整条记录内容'
@ 5,5 prom '4:打印记录' mess '以表格形式打印记录内容'
@ 5,25 PROM '5:退出' mess '退出数据库工作状态'
(1) x
rele wind jw01
if x= (2)
defi wind jw02 from 10,5 to 15,60 clos floa mini syst zoom
acti wind jw02
@ 1,15 say '欢迎您使用本数据库系统'
@ 3,22 say '谢谢!'
wait wind time 10
rele wind jw02
exit
endif
y=str(x,1)
do rsd&y
enddo
set talk on
return
8。该程序的功能是:显示一个光带式菜单,移动光带再按回车键或直接键入菜单首字符即可执行相应功能。
程序中有两处空,请补充完整,使之能正确运行。
注意:不得改变程序的结构,也不能增加或删减程序行。
SET TALK OFF
CLEAR
DO WHILE .T.
@ 2,10 PROMPT "1--输入数据" MESSAGE "向数据库文件添加记录"
@ 6,10 PROMPT "2--查询数据" MESSAGE "按记录顺序查询"
@ 10,10 PROMPT "3--退出系统" MESSAGE "退出FoxPro系统"
SET MESSAGE TO 20
[ ] TO K
DO CASE
CASE K=1
@ 15,10 SAY "请输入数据"
CASE K=2
@ 15,30 SAY "开始查询数据"
CASE K=3
[ ]
ENDCASE
ENDDO
SET TALK ON
8。该程序的功能是:从键盘输入一个整数,并计算不大于该数的奇数的累加和。
程序中有两个错误,请调试改正,使之能输出正确的结果。
注意:不得改变程序的结构,也不能增加或删减程序行。
SET TALK OFF
CLEAR
yn="Y"
DO WHILE UPPER(yn)="Y"
CLEAR
ACCEPT "请输入一个1位或2位的整数:" TO n
STORE 0 TO x, y
z=""
DO WHILE x<=n
x=x+1
IF INT(x/2)<>x/2
z=z+"+"+STR(x,2)
y=y+x
ENDIF
ENDDO
? z+"="+STR(y,4)
WAIT "是否继续?(Y/N)" TO yn
ENDDO
SET TALK ON