《数据库和面向对象程序设计21》(A)试卷.doc》由会员分享,可在线阅读,更多相关《数据库和面向对象程序设计21》(A)试卷.doc(12页珍藏版)》请在三一办公上搜索。
1、本科生0910学年第二学期数据库和面向对象程序设计2-1课程期末考试试卷(A卷)任课教师: 专业: 学号: 姓名: 成绩: 得分一、 单项选择题(每题1分,共35分)注意答案必须写在下面答题卡中单项选择题答题卡:12345678910111213141516171819202122232425262728293031323334351执行命令:LIST FOR XB=女所引起的关系操作是( )。A) 投影B)连接C) 关联D) 选择2. 已知有项目和志愿者两个实体,一个项目有多名志愿者参与,一个志愿者可以参加多个项目,则项目与志愿者两个实体之间的联系类型为( )。A) 多对多联系 B) 一对多
2、联系 C) 多对一联系D) 一对一联系3. 下列4个表达式中,值为春眠不觉晓的是( )。A) 春眠+不觉晓 B) 春眠+不觉晓C) 春眠不觉晓 D) 春眠 不觉晓4.执行下列命令后,输出的结果是( )。A= +? 4&A.5=+str(4&A.5,2)A) 4&A.5= 0 B) 4&A.5=9 C) 4+.5= 9 D) 4+5= 95. 如下职工数据表,执行哪条命令后,能列出所有姓名中含有“路”字符的职工记录( )。Record# 编号 姓名 部门 工资 奖金1 1001 路长生 车间 850 2002 1002 汪洋 车间 700 2003 1003 陆地 车间 680 2004 200
3、1 林木 设计科 900 1505 2002 陈路 设计科 800 1606 3004 孙言 财务科 900 1007 3006 路永胜 财务科 1300 1208 3010 高英雄 财务科 1100 140A) LIST FOR LEFT(姓名,2)= 路 B) SET EXACT OFF LIST FOR 姓名=路C) LIST FOR AT(路,姓名)0 D) LIST FOR SUBSTR(姓名,1,2)= 路6.下列函数运行结果是3.1的是( )。A) STR(3.14,4,1) B)STR(3.16,3,1) C) STR(3.14,3,2) D)STR(3.14,4,2) 7.
4、以下各表达式中,值为数值型的是( )。A) LEN(36-5*4)10 B) AT(管理,现代管理方法与特点) C) DATE()-2010 D) DAY(DATE()-2010)=168.以下四组函数或表达式中,值相同的一组是( )。A) YEAR(DATE()与SUBSTR(DTOC(DATE(),1,4)B) ALLTRIM(A+B)与RTRIM(A+B)(其中A=THIS ,B= THIS)C) VARTYPE(36-5*4)与VARTYPE(36-5*4)D) RIGHT(VISUAL FOXPRO,6)与SUBSTR(VISUAL FOXPRO,1,6) 9.以下关于内存变量的叙述
5、中,错误的是( )。A) 在VFP中,内存变量的类型取决其当前值的类型B) 内存变量的类型可以改变C) 当内存变量与当前表中的字段变量同名时,系统优先访问内存变量D) 数组是按照一定顺序排列的一组内存变量10. 表文件的扩展名是( )。A) .DBC B) .DBF C) .PRG D) .FPT11.下列表达式值一定为.T.的是( )。A) 2005-1-12006-1-1B) ABCABD C) .T. AND 12 D) .T. OR 1212. 要限制数据库表中字段的重复值,可以使用( )。A) 主索引或候选索引 B) 主索引或唯一索引C) 主索引或普通索引 D) 唯一索引或普通索引1
6、3. 如果某个字段值允许为空值,当需要输入.NULL.值,则可按快捷键( )。A) Ctrl+0 (数字0) B) Ctrl+o (字母o) C) Ctrl+N D) Ctrl+W14.视图被称为虚表,是因为( )。A) 与数据表结构不一样 B) 不能包含在数据库中C) 不存放实际数据记录 D) 不能修改数据15.下面有关字段名的叙述中,错误的是( )。A) 自由表的字段名最大长度为10B) 字段名必须以字母或者汉字开头C) 字段名中可以有空格D) 数据库表中可以使用长字段名,最大长度为128个字符16.已知一个数据库表文件有8条记录,当前记录号是5,使用APPEND BLANK 命令加一条空
7、记录,该空记录的记录号是( ) 。A) 6 B)9 C) 5 D)8 17.下列关于数据库的叙述中,正确的是( )。A) 打开数据库时,其中的数据库表会自动打开。 B) 数据库当中的表都可以建立主索引。 C) 建立了永久关系的两个数据库表,当子表的记录指针移动时,父表的记录指针自动跟着移动。 D) 复合索引就是基于多个字段建立的索引。 18.数据表学生有20条记录,对数据表学生进行下列操作,其结果为( )。USE CZ ? RECNO( ) SKIP -1 ? RECNO( ) GO 5SKIP 3? RECNO()GO BOTTOM ? RECNO( ) SKIP ?RECNO( )A) 0
8、、1、8、21、21 B) 1、1、8、20、21C) 0、1、7、20、21 D) 1、1、7、20、2119. 复合索引文件的扩展名是( )。A).CDX B) .IDX C) .PJX D) .PRG20.如上第5题职工数据表,执行以下命令序列后,记录指针定位在( )。USE 职工INDEX ON 工资 TAG tempGO TOPLOCATE NEXT 3 FOR 奖金=150A)编号为1003的记录上 B)编号为3010的记录上 C)编号为3004的记录上 D)编号为2002的记录上 21. 工资表结构为:工资.dbf(职工号C(5),基本工资N(4),工龄工资 N(4),实发工资
9、N(5))。现将所有职工的基本工资提高10,工龄工资提高5,然后重新计算实发工资字段值,下面命令正确的是( )。A) REPLACE ALL 实发工资 WITH 基本工资*1.1+工龄工资*1.05B) REPLACE ALL 实发工资 WITH 基本工资+工龄工资;基本工资 WITH 基本工资*1.1, 工龄工资 WITH 工龄工资*1.05C) REPLACE ALL基本工资 WITH 基本工资*1.1, ;工龄工资 WITH工龄工资*1.05, 实发工资 WITH基本工资+工龄工资D) REPLACE ALL基本工资 WITH 基本工资*1.1, ;实发工资 WITH 基本工资+工龄工资
10、,工龄工资 WITH工龄工资*1.0522.在VFP中,表之间的联接分四种,以下哪个选择项不属于这四种联接( )。 A) 内部联接 B) 左联接 C) 右联接 D) 外部联接23. 一个关系相当于一张二维表,二维表中的各栏目相当于该关系的( )。A) 属性B) 元组C) 结构D) 数据项24. 扩展名为.PRG的程序文件中,标示注释行的字符是( )。A) 冒号(:) B) 分号(;) C) 逗号(,) D) 星符(*)25. 关于查询与视图以下说法错误的是( )。A) 查询和视图都可以从一个或多个表中提取数据B) 查询结果不能修改C) 视图是完全独立的,它不依赖于数据库的存在而存在D) 可以通
11、过视图更改数据原表的数据26.下列参照完整性规则不正确的是( )。A) 删除规则选择级联,则删除父表记录时自动删除子表中所有相关记录。B) 更新规则选择限制,则若子表中有相关记录则禁止更新父表。C) 插入规则选择忽略,则允许子表插入与父表无关的记录。D) 更新规则选择级联,则修改子记录后父表相应记录自动更新。27. 在表结构中,逻辑型、日期型、备注型字段的宽度分别固定为( )。A)3,8,10 B)1,6,4 C)1,8,任意 D)1,8,4 28. 备注型字段的数据用来存放( )。A) 指向备注的具体内容 B)指向DBF文件的指针C) 指向FPT文件的文件名 D)指向FPT中文字块的指针 2
12、9. 下面哪个不是Visual FoxPro的常量( )。A) 1E10 B) 101 C) N D) T30. 在VFP中,执行下面的命令序列后,显示的结果是( )。 Y=10 X=Y=11 ?X,YA) 11 11 B) .F. 10 C) 11 10 D) 10 1031. 下列可以将变量A、B的值互换的一组语句是( )。A) A=B,B=AB) A=(A+B)/2,B=(A-B)/2C) A=A+B,B=A-B,A=A+BD) C=A,A=B,B=C32. 职工表中有职工号、姓名、出生日期等字段,要显示所有1985年出生的职工清单,应使用的命令是( )。A) DISP FOR 出生日期
13、=1985 B) DISP FOR YEAR(出生日期)=1985C) DISP FOR 出生日期=1985 D) DISP FOR YEAR(出生日期)=198533. 执行语句DIMENSION M(3),N(2,3)后,数组M和N的元素个数分别为( )。A) 1个,2个B) 3个,6个C) 3个,5个D) 4个,12个34. 在VFP的INPUT、ACCEPT与WAIT 三条命令中,可以接受字符型数据的是( )。A) 仅ACCEPT命令 B) 仅ACCEPT和WAIT 命令C) 仅WAIT命令 D) INPUT 、ACCEPT和WAIT这三条命令均可35若能够正常执行命令 REPLACE
14、 ALL SOFIE WITH YEAR(DATE()那么字段SOFIE的数据类型是( )。A) 逻辑型 B) 日期性 C) 数值型 D) 字符型得分二、填空题(每空1分,共30分) (注意将结果写在下面相应横线上)1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 1. 关系是具有相同性质的 (1) 的集合。2. 在VFP中,主关键字不允许有重复值或 (2) 。3. 定义数组后,VFP系统自动给每个数组元素赋初值为 (3)
15、。4. 命令? VARTYPE(2010/10/10)的输出值是 (4) 。 5. 若已打开的数据表文件和内存变量都有变量名“成绩”,若将当前记录的成绩值存入内存变量“成绩”中,应使用的命令是 (5) 。 6. 项目文件是数据、文档、类库、代码及其他一些对象的集合,其扩展名为 (6) 。7. 对关系进行选择、投影或连接运算之后,运算的结果是一个 (7) 。8.设置D盘下的new文件夹为默认路径的命令是 (8) 。9. 为了确保相关数据库表之间数据的一致性,需要设置 (9) 规则。10. 索引能够确定表中记录的 (10) 顺序,而不改变表中记录的 (11) 顺序。 11. 一个复合索引文件可包含
16、多个索引标识,但任何时刻只有一个索引标识起作用,当前起作用的索引标识称为 (12) ,设置主控索引的命令是 (13) 。12. 用一条命令给A1,A2同时赋值20的语句是 (14) 。13.命令SELE 0的意思是 (15) 。l 以下各题使用如下四个数据表:l 各数据表结构为:职工(职工号(C),工资(N),部门号(C),姓名(C),性别(C),出生日期(D),级别(N),是否党员(L)工程(工程号(C),工程名(C),工程城市(C),是否完成(L)部门(部门号(C),部门名(C),所在城市(C)工作(职工号(C),工程号(C),合同号(C),工作月数(N)14. 查询所有男职工的信息。(1
17、6) FROM 职工WHERE 性别=男 15.查询市场部所有党员的职工号、姓名。SELE 职工号,姓名 FROM 职工,部门;WHERE (17) AND 部门=市场部 AND (18) 16.按照级别统计每个级别的职工人数。SELE 级别, (19) FROM 职工 (20) 17.查询84年6月15日以后出生的职工的名单。SELE 姓名 FROM 职工 WHERE (21) 18.求至少参加了101号工程和102号工程职工的职工号。SELECT X.职工号 FROM (22) ;WHERE X.职工号=Y.职工号 AND X.工程号=101 AND Y.工程号=102 19.求工资大于或
18、者等于2500元的男职工的职工号及工资,并按工资由高到低列出。SELECT 职工号,工资 FROM 职工;WHERE 性别=男 AND 工资=2500 (23) 20.求出总工作月数大于或者等于30个月的职工的职工号、姓名及总工作月数。SELECT 工作.职工号,姓名,SUM(工作月数) AS 总工作月数 FROM 职工,工作;WHERE 职工.职工号=工作.职工号;GROUP BY 工作.职工号 (24) 21.列出所有职工参加的工程号,去掉重复值。SELECT (25) 工程号 FROM 工作 22.列出参加上海迪斯尼乐园工程的所有职工的职工号。SELECT 职工号 FROM 工作 WHE
19、RE (26) ;(SELECT DISTINCT 工程号 FROM 工程 WHERE 工程名=迪斯尼乐园)23.列出没有参加任何项目的职工的职工号。SELECT 职工号 FROM 职工 WHERE (27) ;(SELECT DISTINCT 职工号FROM 工作)24.列出工作部门在上海、参加的工程设立在天津,此类职工的职工号、姓名。SELECT DIST 职工.职工号,姓名 FROM (28) ;WHERE (29) AND 部门.所在城市=上海 AND 工程城市=天津25.按照部门统计每个部门的平均工资和最高工资。SELECT 部门号,_ (30) FROM 职工 GROUP BY 部
20、门号 得分三、程序分析与填空(按题目要求答题!共35分) (注意将结果写在下面相应横线上)(1) (2) (3) (4) (5) (6) (7) (8) (9) (10) (11) (12) (13) (14) (15) (16) (17) (18) (19) 1. 读程序写结果。(3分) CLEARX=4A=2DO WHILE XA C=2 DO WHILE C30 B=B+B C=15?A,B,C& (6) 4. 读程序写结果。(3分) N=3MM=0DO WHILE N=7 ?AREA(N) & (7) N=N+2ENDDOFUNCTION AREAPARAMETERS XDO CASE
21、 CASE X-30 MM=MM+3ENDCASERETURN MM5.数据表“学生.dbf”有3条记录,阅读下列程序,并给出运行结果:(2分)CLEAR USE 学生 SCAN ?RECNO()& (8) SKIP ENDSCAN USEY=2*x+1 x=12*x+10 1x106如下程序实现下图分段函数,请填空。(3分)INPUT PLEASE INPUT X: TO XIF XB+2 RETURN ELSEWAIT 输入的三角形边长值不合格!CANCEL ENDIF FUNCTION AREA &自定义函数AREA( ) (14) SS=(X+Y+Z)/2 S1=SQRT(SS*(SS-X)*(SS-Y)*(SS-Z) RETURN (15) 8.下面程序的功能是将学生表的记录按照从最后一条到第一条的顺序依次输出,并且每一屏只显示10个记录。请填空完善该程序。(4分)USE 学生GO BOTTOMS=0 (16) DO WHILE (17) DISPLAY S=S+1 IF (18) N=N+1WAIT “当前显示的是第”+ALLTRIM(STR(N)+“屏”CLEAR ENDIF (19) ENDDO?显示完毕!USE草稿纸(草稿纸等同于试卷,请不要带出考场!)【注意】本试卷满分100分,请不要拆开试卷。答题前请核对,少页、多页、重页请更换试卷。
链接地址:https://www.31ppt.com/p-2395475.html