网站首页
分类导航
试题中心
下载中心
英语学习
缤纷校园
考试论坛
网站留言
客服中心
 全国计算机等级二级FOX上机编程题题型
【字体:
全国计算机等级二级FOX上机编程题题型
http://www.exam8.com 来源:考试吧(Exam8.com) 点击: 更新:2004-9-15

第一题:有计算机等级考试数据库djks.dbf,包括:考号、姓名、性别、年龄和单位等字段;成绩数据库cj.dbf,包括:考号、考场编号、笔试成绩和上机成绩等字段。 请考生编写程序 PROG1.PRG,其功能是其考号、单位、笔试成绩和上机成绩共四个字段。然后在生成的连接数据库中按单位对笔试和上机成绩进行分类汇总,存入数据库qaz.dbf文件中。

   参考答案:
  SET TALK OFF
  CLEAR
  SELE B
  USE CJ
  SELE A
  USE DJKS
  JOIN WITH B TO CJ1 FOR 考号=B->考号 FIELD ?考号,单位,B->笔试成绩,B->上机成绩

  SELE C
  USE CJ1
  SORT ON 单位 TO CJ2
  USE CJ2
  TOTAL ON 单位 TO QAZ
  USE QAZ
  LIST
  CLOSE DATABASE
  @ 10,30 SAY "再见!"
  SET TALK ON
  
  第二题:已有三个数据库:⑴借阅数据库jy.dbf,包括图书编号、借书证号、借书日期和借出天数等字段; ⑵读者数据库dzh.dbf,包括借书证号、姓名、停借否等字段;⑶停借数据库tj.dbf,包括借书证号、姓名等字段。 请考生编写程序 PROG1.PRG,其功能是整理图书借出情况:首先在借阅数据库中用当前日期减去借书日期得出借出天数,然后进行判定处理,凡借书超过60天(不含60天)者,就把读者数据库中的停借否字段置为逻辑真,并在停借数据库中产生一条记录。(注意:假定当前日期为2000年9月1日)

  参考答案:
  SET TALK OFF
  SET CENTURY ON
  CLEAR
  SELE C
  USE TJ
  SELE B
  USE DZH
  REPL ALL 停借否 WITH .F.
  SELE A
  USE JY
  DO WHILE .NOT. EOF()
  JSZ=借书证号
  REPL 借出天数 WITH DATE()-借书日期
  IF 借出天数>60

  SELE B
  LOCA FOR 借书证号=JSZ
  REPL 停借否 WITH .T.
  SCATTER TO TJF
  SELE C
  APPE BLANK
  GATHER FROM TJF
  SELE A
  ENDIF
  SKIP
  ENDDO
  SELE C
  LIST
  CLOSE ALL
  CLEAR ALL
  SET TALK ON

第三题:已有数据库data.dbf,其中有data1--data7、最大数、最小数和平均数等字段。 请考生编写程序PROG1.PRG,其功能是按记录求出data1--data7七个数中的最大数、最小数和平均数,并记入数据库的相应字段中,最后把结果输出到data1.dbf文件中。

   参考答案:
  SET TALK OFF
  CLEAR
  USE DATA
  DO WHILE .NOT. EOF()
  AV_NUM=(DATA1+DATA2+DATA3+DATA4+DATA5+DATA6+DATA7)/7
  MAX_NUM=MAX(DATA1,MAX(DATA2,MAX(DATA3,MAX(DATA4,MAX(DATA5,MAX(DATA6,DATA7))))))
MIN_NUM=MIN(DATA1,MIN(DATA2,MIN(DATA3,MIN(DATA4,MIN(DATA5,MIN(DATA6,DATA7))))))
REPL 最大数 WITH MAX_NUM,最小数 WITH MIN_NUM,平均数 WITH AV_NUM

  SKIP
  ENDDO
  BROW
  COPY TO DATA1
  USE
  SET TALK ON
  
  第四题:已有数据库djks.dbf。请编写程序PROG1.PRG,在程序中首先通过复制djks.dbf生成一个具有考号、 姓名、笔试及上机四个字段的数据库文件aaa.dbf(只有结构),然后再修改其结构,把考号字段改为数值型8个字符宽、姓名字段改为8个字符宽。要求必须使用: copy to <结构文件名> structure extended 和 create <生成库文件名> from <结构文件名>命令实现,使用其它方法不得分

   参考答案:
  set talk off
  clos data
  use djks
  copy stru to aaa fiel 考号,姓名,笔试,上机
  USE AAA
  COPY STRU TO BBB EXTENDED
  USE BBB
  LOCA FOR FIELD_NAME='考号'
  REPL FIELD_TYPEWITH 'N',FIELD_LEN WITH 8

  LOCA FOR FIELD_NAME='姓名'
  REPL FIELD_LEN WITH 8
  CREATE AAA FROM BBB
  clos data
  set talk on

第五题:已有数据库stock.dbf,包括商品号、商品名、单价和数量等字段。请考生编写程序PROG1.PRG,其功能是给该数据库增加一个总额(N, 10.2)字段,并填入数据,其值为数量与单价之乘积,最后把结果复制到stock1.dbf文件中。

   参考答案:
  SET TALK OFF
  CLOSE DATABASE
  CLEAR
  USE STOCK
  COPY STRUCTURE TO STO EXTENDED
  USE STO
  APPEN BLANK
  REPL FIELD_NAMEWITH "总金额",FIELD_TYPE WITH "N",FIELD_LEN ?WITH 10,FIELD_DEC WITH 2

  CREATE STOCK1 FROM STO
  USE STOCK1
  APPE FROM STOCK
  REPL ALL 总金额 WITH 数量*单价
  LIST
  USE
  SET TALK ON
  
  第六题:已有计算机等级考试数据库djks.dbf,包括:考号、姓名、笔试成绩、上机成绩和平均成绩等字段,但各成绩字段为空;另有成绩数据库cj.dbf,包括:考号、考场编号、笔试成绩和上机成绩等字段,
考生的考试成绩已录入其中。 请编写程序 PROG1.PRG,要求把考生的考试成绩填写到数据库djks.dbf中,然后再计算笔试和上机成绩的平均成绩,填入各记录的平均成绩字段中。最后生成一个与djks.dbf结构完全相同的不及格数据库bjg.dbf,把平均成绩不及格的考生记录移入不及格库。

   参考答案:
  SET TALK OFF
  SET DELETED OFF
  CLEAR
  SELE B
  USE CJ
  SELE A
  USE DJKS
  INDEX ON 考号 TO DJKS
  UPDATE ON 考号 FROM B REPLACE 笔试成绩 WITH B->笔试成绩,上机成绩 ?WITH B->上机成绩 RANDOM

  GO TOP
  REPLACE ALL 平均成绩 WITH (笔试成绩+上机成绩)/2
  COPY TO BJG FOR 平均成绩<60

  LIST
  USE BJG
  LIST
  CLOSE DATABASE
  SET TALK ON
第七题:请考生编写程序 PROG1.PRG,其功能是计算下列多值函数的值:
   ┌ABS(x) x<0

   ├ex 0<=x<1

   y=├x2 1<=x<3

   └INT(x) x>=3

  计算的数据都存放在数据库shj.dbf中,该数据库只有两个字段:X(N,4.1)和Y(N,6.4)。在程序中读取字段X的数据,然后把计算结果存放在字段Y中, 最后把shj.dbf所有记录复制到shj1.dbf文件中

  参考答案:
  SET TALK OFF
  USE SHJ
  do while .not. eof()
  X1=X
  DO CASE
  CASE X1<0

  Y1=ABS(X1)
  CASE X1>=0 .AND. X<1

  Y1=EXP(X1)
  CASE X>=1 .AND. X<3

  Y1=X1*X1
  OTHERWISE
  Y1=INT(X1)
  ENDCASE
  REPLACE Y WITH Y1
  SKIP
  enddo
  LIST
  COPY TO SHJ1
  CLOSE DATABASE
  SET TALK ON
  
  第八题:请考生编写程序 PROG1.PRG,其功能是计算数学公式:
   S=1-1/3!+1/5!-1/7!+1/9!-1/11!+...-1/(2n-1)!n
 值存放在数据库shj.dbf中,该数据库只有两个字段:N(n,2.0)和S(n,17.15)。执行程序时到数据库中逐个读取N值,再把计算结果存放在S字段中, 最后把shj.dbf所有记录复制到shj1.dbf文件中。

  参考答案:
  SET TALK OFF
  USE SHJ
  DO WHILE .NOT. EOF()
  STORE N TO NJ2
  NJ2=2*NJ2-1
  JC=1
  S1=0
  NJ1=1
  NJ3=1
  DO WHILE NJ1<=NJ2

  jc=jc*nj1
  if mod(nj1,2)=1
  IF MOD(NJ3,2)=1
  S1=S1+(1/jc)
  ELSE
  S1=S1-(1/JC)
  ENDIF
  NJ3=NJ3+1
  endif
  NJ1=NJ1+1
  ENDDO
  REPLACE S WITH S1
  SKIP
  ENDDO
  COPY TO SHJ1
  CLOSE DATABASE
  SET TALK ON

第九题:有计算机等级考试成绩数据库cj.dbf,包括考号、笔试成绩和上机成绩等字段,其中考号的前两位是单位编码;还有统计数据库tj.dbf,包括单位编码、笔试平均分、上机平均分、笔试最高分、上机最高分等字段。 请编写程序 PROG1.PRG,其功能是:按单位进行各项统计,结果存于统计数据库tj.dbf的相应字段中。

  参考答案:
  SET TALK OFF
  SET SAFETY OFF
  CLOSE DATABASE
  CLEAR
  SELE 2
  USE TJ
  ZAP
  SELE 1
  USE CJ
  SORT ON 考号 TO CJ1
  USE CJ1
  DO WHILE .NOT. EOF()
  STORE 0 TO BS1,SJ1,BSMAX,SJMAX
  DWCODE=SUBSTR(考号,1,2)
  N1=0
  BSMAX=笔试成绩
  SJMAX=上机成绩
  DO WHILE 考号=DWCODE
  IF 上机成绩>SJMAX

  SJMAX=上机成绩
  ENDIF
  IF 笔试成绩>BSMAX

  BSMAX=笔试成绩
  ENDIF
  BS1=BS1+笔试成绩
  SJ1=SJ1+上机成绩
  N1=N1+1
  SKIP
  ENDDO
  SELE 2
  APPEND BLANK
  REPLACE 单位编码WITH DWCODE,笔试平均分 WITHBS1/N1,上机平均分 WITH ;
  SJ1/N1,笔试最高分 WITH BSMAX, 上机最高分 WITH SJMAX

  SELE 1
  ENDDO
  SELE 2
  LIST
  CLOSE DATABASE
  SET TALK ON
  SET SAFETY ON
  
  第十题:已有计算机等级考试数据库djks.dbf,包括:考号、姓名、笔试成绩、上机成绩和平均成绩等字段,其中考号的前两位是单位代码;另有单位数据库dw.dbf,包括:单位代码、单位名称、人数和总平均分等字段。 请编写程序 PROG1.PRG,要求先在djks.dbf数据库中计算各位考生的平均成绩,并填入平均成绩字段中。然后按单位统计人数及总平均分,记入dw.dbf数据库的相应字段中,最后把dw.dbf所有记录复制到dw1.dbf文件中。

  参考答案:
  SET TALK OFF
  SELE 2
  USE DW
  SELE 1
  USE DJKS
  DO WHILE .NOT. EOF()
  REPLACE 平均成绩 WITH (笔试成绩+上机成绩)/2
  SKIP
  ENDDO
  SORT ON 考号 TO DJKS1
  USE DJKS1
  DO WHILE .NOT. EOF()
  DW1=SUBSTR(考号,1,2)
  STORE 0 TO PEOPLE,AV_SCOR
  DO WHILE SUBSTR(考号,1,2)=DW1
  AV_SCOR=AV_SCOR+平均成绩
  PEOPLE=PEOPLE+1
  SKIP
  ENDDO
  SELE 2
  LOCA FOR 单位代码=DW1
  REPL 人数 WITH PEOPLE,总平均分 WITH AV_SCOR/PEOPLE

  SELE 1
  ENDDO
  SELE 2
  COPY TO DW1
  LIST
  CLOSE DATABASE
  SET TALK ON

文章录入:admin    责任编辑:admin  
 版权声明
   如果本网站所转载内容不慎侵犯了您的权益,请与我们联系,我们将会及时处理。如转载本网内容,请注明出处。
 发表评论
关于本站 网站声明 广告服务  联系方式  付款方式  站内导航  客服中心  友情链接   
Copyright © 2004-2006 考试吧 (Exam8.com) All Rights Reserved 
中国科学院研究生院中关村园区(北京市海淀区)