设为首页    加入收藏

自学考试省级导航

全国 A安徽 B北京 C重庆 F福建 G广东 广西 甘肃 贵州 H河南 河北 湖南 湖北 黑龙江 海南 J江苏 江西 吉林 L辽宁 N内蒙古 宁夏 Q青海 S山东 山西 陕西 四川 上海 T天津
     X新疆 西藏 Y云南 Z浙江 历年真题分类检索

全国2005年10月自考数据库及其应用试题 (打印word版)(二)
2013-05-24 12:31:49 来源:91考试网 作者:www.91exam.org 【
四、程序设计题(本大题共5小题,每小题5分,共25分)
34.文件press.dbf用于存放出版社信息,其字段有:name(名称,字符型),addr(地址,字符型),bnum(书目数,数值型)。下述程序的功能是:查找书目数最少的所有出版社的信息。完成下述程序。
SET TALK OFF
USE press
IF      (1)      THEN
  RETURN
ENDIF
minval=bnum
pstr=SPACE(0)
SCAN
  IF      (2)      THEN
     IF bnum             (3)     
        pstr=name
ELSE
  pstr=pstr+","+name
ENDIF
   ENDIF
ENDSCAN
DISPLAY ALL FOR AT(name,pstr) >0
USE
RETURN
(1)
(2)
(3)
35.文件grades.dbf用于存放学生成绩信息,其字段有:sname(姓名,字符型),cname(课程名,字符型),grade(成绩,数值型)。sname为主键。下述程序的功能是查找“李平”、“张和”均学过的课程名称。完成下述程序。
SET  TALK  OFF
      (1)     
STORE  SPACE(0) To  str1, str2
SCAN  FOR  sname="李平"
            (2)      =str1+cname+"/"
ENDSCAN
SCAN  FOR      (3)     
IF  AT(cname, str1)< >0  THEN
    str2=str2+cname+"/"
ENDIF
ENDSCAN
? str2
USE
RETURN
(1)
(2)
(3)
36.计算S=1+2+3+…+(n-1)+n的值。完成下述程序。
SET TALK OFF
INPUT〃请输入一个正整数x〃TO x
      (1)     
k=1
DO WHILE      (2)     
   s=s+k
   k=k+1
ENDDO
?〃S=〃,      (3)     
SET TALK ON
RETURN
(1)
(2)
(3)
37.文件student.dbf的字段有sno(学号,数值型),sname(姓名,字符型),sex(性别,字符型),cno(班号,数值型),grade(成绩,数值型);文件class.dbf的字段有cno(班级号,数值型),cname(班级名,字符型)。在两库之间建立连接,然后为班级名为“计算机”的每个学生成绩增加5分,要求显示“计算机”班学生的姓名、班级名、成绩。完成下述程序。
SET TALK OFF
SELECT 1
USE class
      (1)      TO cno
SELECT 2
USE student
SET RELATION TO       (2)     
REPLACE ALL grade WITH grade+5 FOR      (3)     
LIST FIELDS sname,      (4)     
SET RELATION TO
CLOSE ALL
SET TALK ON
RETURN
(1)
(2)
(3)
(4)
38.有帐号数据库文件account.dbf,其字段有name(姓名,字符型),accountno(帐号,字符型),init_balance(初始余额,数值型);明细帐数据库文件detail.dbf,其字段有accountno(帐号,字符型),datel(日期,日期型),deposit(存入金额,数值型),credit(支出金额,数值型),balance(余额,数值型)。数据库内容如下所示。程序要求显示用户给定的任一帐号的姓名和该帐号发生帐目。完成下述程序。
     account.dbf      detail.dbf
   accountno  name  init_balance  accountno  datel   deposit   credit   balance
  1001     王三      530            1001  98.01.21   100     120
1008     李四      150            1001  98.09.10    80      50
1003     程程     1500            1001  99.07.25    90     110
                                        
SET TALK OFF
SELECT 1
USE account
SELECT 2
USE detail
SELECT 1
accountx=SPACE(4)
ACCEPT 〃请输入帐号:〃  TO       (1)     
LOCATE FOR      (2)     
IF FOUND( ) THEN
name1=name
ELSE
?〃帐号库文件中无此帐号〃
CLOSE ALL
RETURN
ENDIF
SELECT 2
?〃姓名:〃+namel+〃和〃+accountx+〃帐号发生帐目如下〃
DISPLAY FIELDS date1, deposit, credit, balance FOR      (3)     
CLOSE ALL
SET TALK ON
RETURN
(1)
(2)
(3)
五、综合题(本大题共2小题,每小题5分,共10分)
39.数据库文件mark.dbf的字段有:sno(学号,字符型),maths(高数,数值型),alg(线性代数,数值型),computer(计算机基础,数值型),fox(Foxpro,数值型),english(英语,数值型)和average(平均成绩,数值型),并以sno为关键字创建索引文件,说明主程序、函数abc( )、pjs( )各自完成什么功能。
 SET  TALK  OFF
 SET  PROCEDURE  TO stud
 SELECT  1
 USE  mark  INDEX  mark
 COPY  STRUCTURE  TO avgm
 SELECT  2
 USE  avgm
 SELECT  1
 n=0
 @10, 10  SAY"请输入统计学生人数"GET  n
 READ
 DO  WHILE  n>=1
      sno3=abc( )
      SEEK   sno3
   DISPLAY
      n=n-1
 ENDDO
 SELECT  2
 SORT  TO  avgm1  ON  average
 SELECT  3
 USE  avgm1
 BROWSE
 CLOSE  DATA
 RETURN
 文件  stud的内容如下
 FUNCTION  abc( )
 PRIVATE  mark1, sno1
 sno1=SPACE(4)
 @12, 10  SAY"请输入学号"GET  sno1
 READ
 mark1=pjs(sno1)
 SELECT  2
 APPEND  BLANK
 REPLACE  sno    WITH A->sno
 REPLACE  maths   WITH A->maths
 REPLACE  agl   WITH A->alg
 REPLACE  computer  WITH A->computer
 REPLACE  fox    WITH A->fox
 REPLACE  english   WITH A->english
 REPLACE  average   WITH  mark1
 SELECT  1
 abc=sno1
 RETURN  abc
 
 FUNCTION  pjs(sno2)
 PRIVATE  sno2
 SELECT  1
 LOCATE  FOR  sno=sno2
 pjs=(alg+maths+computer+fox+english)/5
 RETURN  pjs
 (1)主程序功能:
(2)函数abc( )功能:
(3)函数pjs( )功能:
40.设有关系模式R(A,B,C),其函数依赖为F={A→B,B→A,A→C},请回答如下问题
(1)指出R的所有候选键并说明原因。
(2)R最高属于第几范式?为什么?

 

Tags:自学考试 历年真题
】【打印繁体】 【关闭】 【返回顶部
上一篇2000年10月份全国高教自学考试数.. 下一篇全国2006年1月自考数据库及其应用..

网站客服QQ: 960335752 - 14613519 - 48225117