2003年硕士研究生招生入学考试试卷
专业名称 地图学与地理信息系统
研究方向 地理信息系统
科目代码 380
考试科目 数据库(A)
一、 填充题(共60空格,每空格1.5分,共计90分)
1、 在数据库管理系统中,数据库的基本结构是一种分层的三层组织结构,即用户级、
、 组成。数据模型有三种基本类型,即层次模型、 、关系模型。
2、已知一学生关系S(学号、姓名、课程号、成绩)。在该关系中,属性 是决定性因素, 构成主键字。
3、在关系代数中,基本的关系运算为选择、投影和联接,其中联接包括 和
,他们的不同点在于 。在Foxbase中,一个关系对应于一张二维表,即一个关系对应一个 。
4、函数y=ex+ +tgx 在Foxbase中的表达式为 。
5、在Foxbase中,执行下列命令
.P1=“A1”
.A1=“A2”
.A2=“A3”
.A3=“A7”
.S=“2003年研究生入学考试”
.A=65
.B=-7
.X=0.618
?A1 &结果为
?Stuff(s,7,0,“南京师范大学”) &结果为
?Mod(A,B) &结果为
?Round(x,2) &结果为
?&A1 &结果为
6、在Foxbase中,数据库文件xy.dbf有一字段xyzb,存放xy坐标值,格式为“xxxxx.xx,yyyyy.yy”,中间用逗号将XY分开,将X坐标从xyzb字段中分离出来的命令 ,将y坐标从xyzb中分离出来的命令 。
7、在Foxbase中,一次最多能打开 个数据库文件和 个索引文件。内存变量文件的后缀为 ,多用户环境以共享方式打开数据库文件的命令是 ,给库文件加锁的命令 ,给记录解锁的命令 。
8、设当前路径为c:\fox;执行命令
.Set Path c:\s1,s2
.Create s3.dbf
问S3.dbf库文件存放在 文件目录中。
9、在Foxbase中,数据库文件Student.dbf,含有学号C8、姓名C16、语文N3、数学N3、英语N3、总分N4、名次N3、是否团员L、出生年月D和学习情况M共10个字段。
.use Student
.List
记录号 学号 姓名 出生年月 是否团员 语文 数学 英语 总分 名次 学习情况
1 a001 张中 07/01/77 T 87 74 81 Memo
2 a002 李明 08/05/77 F 91 82 84 Memo
3 b003 王正 02/25/76 F 87 88 72 Memo
4 b004 李中王 10/09/77 T 62 72 68 Memo
.GO 2
.Dele
.Set Dele On
.Sum 语文 To a For Substr(trim(学号),1,1)=“a”
*a值为
. Sum 语文 To b For Substr(trim(学号),1,1)=“b”
*b值为
.GO 1
.姓名=“李正”
.姓名=姓名-姓名
.?姓名 &姓名为
.Set Dele Off
.Recall All
.Go 4
.Skip
.?Recno() &Recno显示记录数为
.Set Filt To .F.
.Browse &Browse显示记录数为
.Set Filt To
①数据库记录长度为 字节数;
②显示所有姓名中含有“王”字的纪录的命令是 ;
③显示所有非团员记录的命令是 ;
④计算每个学生总分并填至总分字段的命令 ;
⑤计算全班语文平均成绩的命令 ;
⑥按总分由高到低索引的命令 ;
⑦执行Index On Dtoc(出生年月)To cidx,首记录的学号为 ;
⑧按下列命令索引 ,使每个学生的年龄由小到大排列。索引后,为确保记录指针指向物理记录第1条的命令为 ,按38空格所示的索引,执行Seek “张中”,函数found()的值为 。
⑨生成结构化描述文件ABC的命令为 ,数据库文件ABC中的记录数为 。
⑩查询最高总分的Select-SQL命令是
11查询语文成绩在60-69(含60)人数的Select-SQL命令是 。
10、阅读下列程序
*A1.prg
Close All
Set Talk off
Set Proc To Abc
x=Abc(9)
?x &结果为 ,本程序属
Return
*Abc.prg
Para N
If(N=2)then
x=2
Else
x=Abc(n-1)+n
Endif
Return x
11、阅读下列程序
*A1.prg
Close All
Set Talk off
Set Proc To Abc
S=“南京,连云港,苏州”
Do Abc With s
Return
*Abc.Prg
Para s
Done=1
Do While Done=1
S1=At(“,”,s)
If(S1>0)then
S2=Substr(s,1,s1-1)
S=Substr(s,s1+1,len(s))
?S2
Else
Done=0
Endif
Enddo
Return
请问循环总共 次,S2各次的值分别为
12、阅读下列程序
*A1.prg
Close All
Set Talk off
x1=“5”
x2=“abc”
Set Proc To AA2
Do AA2 With x1,x2
Set Proc To AA3
Do AA3
?x1,x2 &x1,x2分别为
Return
*AA2.prg
Para X1,X2
X1=X1+“7”
X2=X2-X1
?x1,x2 &x1, x2分别为
Return
*AA3.prg
Private x1
X1=“789”
X2=X2-X1
?X1,X2 &X1, X2分别为
Return
13、设有一批数据a1< a2< a3……
Proc abc
Para N
Flag=0
Top=1
Bot=N
Do while flag=0 and
Mid=int((Top+bot)/2)
If A(mid)=k then
Else
If(k
Bot=mid-1
Else
Top=
Endif
Endif
Enddo
If top>bot then
?
Else
?“查找的数在数组中的位置是”+str(mid)
Endif
Return
14、设有Studnet.dbf(学号、姓名、民族)和Score.dbf(学号、成绩)两个数据库,要在它们之间建立逻辑连接,然后为每个少数民族考生的成绩加上5分,最后显示全体考生的学号、姓名和成绩。请对如下程序填空。
SET TALK OFF
SELECT 1
USE student
To inx
SELECT 2
USE score
SET RELATION TO
REPLACE 成绩 WITH FOR
LIST 学号, ,成绩
SET RELATION TO
CLOSE DATA
SELECT 1
SET TALK OFF
RETURN
二、 将下图所示E-R图转换生成关系数据模型(15分)
1
n
m n
三、 编程题(共3题,每题15分,共计45分)
1) 试编程计算下列函数的值 y=x+x3/3!+x5/5!+……+x2n-1/(2N-1)!,精度esp<=10-5。
2) 某机关实行公示制。规定在接受案件后m天内(m>0)必须办结。在计算案件办结最后期限时,应扣除星期六、星期天(法定节假日暂不考虑,认为照常上班)。请编写程序,试计算案件收取后办结的最后期限的日期。
3) 由计算机等级考试成绩数据库Cj.dbf,包括考号、笔试成绩和上机成绩等字段,其中考号的前四位是单位编码;还有统计数据库Tj.dbf,包括单位编码、笔试平均分、上机平均分、笔试最高分、上机最高分等字段。请编写程序,其功能是:按单位进行各项统计,结果存于统计数据库Tj.dbf的相应字段中。