继续教育学院2
站内搜索:
 
 首页  学院概况  新闻中心  函授教育  招生信息  党建工作  等级考试  二学历 
当前位置: 首页>等级考试>备考资料>正文
 招生简章 
 备考资料 
 考试通知 
  备考资料  
全国计算机等级二级VF上机编程题题型
2014-06-19 14:37   审核人:

第一题:有计算机等级考试数据库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
 

关闭窗口

版权所有:长春大学继续教育学院 长春市卫星路6543号 邮政编码:130022

Tel:   招生办:0431-85250481   办公室:85250478   函授科:85250487