《2021年辽宁省丹东市全国计算机等级考试Access数据库程序设计模拟考试(含答案).docx》由会员分享,可在线阅读,更多相关《2021年辽宁省丹东市全国计算机等级考试Access数据库程序设计模拟考试(含答案).docx(21页珍藏版)》请在三一办公上搜索。
1、2021年辽宁省丹东市全国计算机等级考试Access数据库程序设计模拟考试(含答案)学校:班级:姓名:考号:一、操作题(10题)1 .已知数列的递推公式如下:f(n)=1当n=0,1时f(n)=f(n-l)+f(n-2)当n1时则按照递推公式可以得到数列Li,2,3,5,8,13,21,34,55现要求从键盘输入11值,输出对应项的值。例如当输入n为8时,应该输出34o程序如下,请补充完整。PrivateSubrunll_Click()f=lfl=lnum=Val(InputBox(请输入一个大于2的整数:”)Forn=2To【f2=f=flfl=f2NextnMsgBoxf2EndSub2
2、.在窗体中添加一个命令按钮(名为COmmandI)和一个文本框(名为Textl),然后编写如下事件过程:PrivateSubCommand1_Click()DimxAsInteger,yAsInteger,zAsIntegerCallpl(a,b,c)EndSubSubpl(xAsInteger,yAsInteger,zAsInteger)z=x+yEndSub打开窗体运行后,单击命令按钮,文本框中显示的内容是()。3 .建立表之间的关系:在ACCESS数据库“教学管理.mdb”,其中有四个表:教师、学生”、课程、选课成绩由于一名学生可以选修多门课程,而一门课程也可供多名学生选修,则课程与学生
3、之间是多对多联系。一般将一个多对多联系拆分为两个一对多联系。故进行如下操作:1、建立“学生”“选课成绩”、“课程”“选课成绩”之间的关系,2、实施“参照完整性”,要求“级联更新”和“级联删除”。如下图4 .编辑数据表:在ACCESS数据库“教学管理.mdb”,跟下面要求进行相应的操作:表的复制和重命名、隐藏列、冻结列、移动列、行高与列宽、更改表数据的字体、设置数据表格式、数据的查找与替换。5 .在窗体上添加一个名为Commandl的命令按钮,然后编写如下程序:Functionm(xAsInteger,yAsInteger)AsIntegerm=11f(xy,x,y)EndFunctionPri
4、vateSubCommand1_Click()DimaAsInteger,bAsIntegera=1b=2MsgBoxm(a,b)EndSub打开窗体运行后,单击命令按钮,消息框中输出结果为【】。6 .假设用一个长度为50的数组(数组元素的下标从0到49)作为栈的存储空间,栈底指针bottom指向栈底元素,栈顶指针top指向栈顶元素,如果bottom=49,top=30(数组下标),则栈中具有个元素。7 .字段属性设置:在DrWAccess目录下有一ACCESS数据库“教学管理.mdb其中有一“学生”表,如右图。根据要求进行相应的设置。学生;表目回区字段名称数据类型说明生名别龄校员历片人学姓性
5、年入团简照个文文文数日是备OE超间 本本本字时吾对接摩注卫链8 .使用数据视图创建表:在DAccess目录下有一ACCESS数据库“教学管理.mdb”。利用表的“数据视图”创建如下图所示的“学生数据视图”表。学生:表同回区)字段名称I数据类型I说明I人文文文数日是备OLE对象9 .创建一个查询,要求将表对象“tStud”中总分成绩超过270分(含270分)的学生信息追加到空表“Temp”中。其中,Temp”表的入学成绩为学生总分,所建查询命名为“qT4”。10 .阅读下面的程序段:sum=0fori=1to3forj=ito4fork=jto5sum=sum+1nextknextjnexti执
6、行上面的三重循环后,sam的值为o二、基本操作题(10题)(2)将“库存量”表和“销仰品”表的关系设置为一对多,U.实施参照完整性。12 .(4)将Employe/表中的“职称”字段的“默认值”属性设置为“副教授”。13 .(4)将“出厂价”字段的格式属性设置为货币显示形式。(3)将“学生”表按班级号码字段升序排列,创建高级啼14 .选,筛选出所有男同学信息.(5)设置ISeor,”去的“课程号”字段的输入摊码为只能15 .输人5位数字或字母形式。16 .修改“录影集”表“长度”字段的数据类型为“日期/时间”,格式为“日期”,并在“录影集”表中输入如下数据。、IMM11”演IO出版卬份长度,3
7、220022101.222004215(2)将考生文件夹下Excel文件Tt.xls中的数据导入到当前数据库中C要求:数据中的第一行作为字段名,选“学17 .号”数据列为主键.导入表对象命名为(2)在“课程表中输入如下数据,课程ID课程名称学分1高等数学22计算机文化基础33机械制图24政治经济学25毛泽东思想概论219.(3)将“tEmployee”表中“联系电话”字段的“默认值”属性设置为“010-”。20 .(4)将考生文件夹下Excel文件“Test.Xhr中的数据链接到当前数据库中C婺求:数据中的第一行作为字段名,链接表对象命名为“仃4”。三、L选择题(10题)21 .用来接收用户输
8、入数据,应单击工具箱的()按钮。A.B.C.D.22 .下面选项中不属于面向对象程序设计特征的是oA.继承性B.多态性C.类比性D.封装性23 .数据的存储结构是指oA.数据所占的存储空间量B.数据的逻辑结构在计算机中的表示C.数据在计算机中的顺序存储方式D.存储在外存中的数据24 .在单链表中,增加头结点的目的是0A.方便运算的实现B.使单链表至少有一个结点C.标识表结点中首结点的位置D.说明单链表是线性表的链式存储实现25 .下列叙述中正确的是()。A.设计视图只能用于创建表结构B.在报表的“设计”视图中可以对已经创建的报表进行编辑和修改C.设计视图不能用于创建表结构D.设计视图只能用于对
9、未创建的新报表进行创建和编辑表的结构26 .下列叙述中正确的是()。A.用E-R图能够表示实体集之间一对一的联系、一对多的联系、多对多的联系B.用E-R图只能表示实体集之间一对一的联系C.用E-R图只能表示实体集之间一对多的联系D.用E-R图表示的概念数据模型只能转换为关系数据模型27 .要在文本框中显示当前日期和时间,应当设置文本框的控件来源属性为oA.=Date()B.=Time()C.=Now()D.=Year()28 .窗体有3种视图,用于创建窗体或修改窗体的窗口是窗体的A.“设计”视图B.“窗体”视图C.“数据表”视图D.“透视表”视图29 .在待排序的元素序列基本有序的前提下,效率
10、最高的排序方法是()。A.插入排序B.选择排序C.快速排序D.堆排序30 .已知二叉树后序遍历序列是dabec,中序遍历序列是debac,它的前序遍历序列是A.acbedB.decabC.deabcD.cedba四、综合应用题(10题)(2)创建“求和”梗块,实现1+2+34+99+100计算。要求算法在子过程SUm中实现,在主过程L中调用SUm子过程C算法用For循环语句实现。计算结果用消息框显31.示。模块运行结果如图所示。(5)在画体中有一个“显示全部记录“命令按钮(名称为MJst),单击该按钮后,应实现将“tS(udent”表中的全部记录显示出来的功能。现已编写了部分VBA代码,请按照
11、VBA代码中的指示将代码补充完整。要求:修改后运行该窗体,并查看修改结果:注意:不要修改窗体对象“Queiy”和“似UdE”中未涉及的控件、属性;不要修改表对象“tStlcnf。程序代码只能在“*”与“*之间的空行内补充一行语句、完成设计.不允许增删和修改共它位32.置已存在的调句33.(4)按“编号”字段前4位分组统计各组记录个数,并将统计结果显示在组页脚节区。计算控件命名为JCoumZ注意:不能改动数据库中的表对象“回ud”和代询对象qStu(同时也不能修改报表对象“&u(r中已有的控件和Mtto(2)修改“成绩表”杳询.设置学生编号字段条件为“学生成绩查询”窗体组合框内的值。创建“成绩表
12、”宏,运行34.“成绩表”查询。(2)在“仅OClr窗体对象的窗体页脚节区添加一个命令35.按钮命名为FLi7”,按钮标题为“显示信!T。36.在考生文件夹下有“铜辔管理系统rmib”数据库。(1)以“产品”表为数据源,创建“产品”报表,显示“产品”表的全部字段.按照产品ID升序排列,布局为“表格”,方向为“纵向”.样式为“组织报表名称为“产品”。在考生文件夹下有一个数据库文件“咋3.mdb”.里面已经设计了表对象JEmpJ山体对象“他mp”、报表对象-rEmpf11Xlft-mEmp,o同时,给出窗体对象“FEmp”上37.一个按钮的单击事件代码,请按以下功能要求补充设计:(I)设置窗体对象
13、“fEmp”上两个命令按钮的Tab爆索引顺序(即Tab该焦点移动顺序)为从报表输出”按钮(名为“H1”)到“退出”按钮(名为“b(2”)。(2)创建“关闭办公室用品采购表窗体”宏实现关闭“办公室用品采购表”窗体。在“办公室用品采购表”窗体中添加“退出”按钮,实现运行“关闭办公室用品采购表商38.体”宏。(3)设置报表主体节区内文本框rDepC的控件来源为计算控件一要求该控件可以根据报表数据源里的“所属部字段值,从非数据源表对象IGgUP”中检索出对应的部门名称并显示输出。(提示:需考虑DLOOkUP函数的使用。)注意:不能修改数据库中的表对象“tEmployg”和“tGroup”及查询对象1。
14、4“;不能修改报表对象“正1.39 .PlOye”中未涉及的控件和属性。40 .在考生文件夹下有“办公信息.mib”数据库。(1)以“办公室用品采购表”为数据源,自动创建“办公室用品采购表“窗体,布局:纵栏表;样式:国际。五、综合操作题(2题)(2)将窗体中名称为“ITalbd”的标签控件上的文字颜色改为“篮色”(蓝色代码为16711680)、字体名称改为“华文行41 .精二字体大小改为22;(4)假设“四ud”表中学号”字段的第5位和6位编码代表该生的专业信息当这两位编码为“10”时表示“信息”专业,为其他值时表示“管理”专业C设置窗体中名称为ISub的文本框控件的相应属性,使Jt根据“学号
15、”字段的第42 .5位的第6位编码显示对应的G业名称;六、简单应用题(2题)在考生文件夹中有“student.mdb”数据库。(1)以“学生”和“成绩”表为数据源,创建生成表查询“查询1”,将平均分80的学生信息生成“优秀学生”表。43 .该表中有学生姓名、班级号码和平均分字段。(2)以“学生”表为数据源,创建查询“查前2”,查询本月出生的学生信息。结果显示“学生”表中的全部字段下44 .的信息。参考答案!.numft)+flnumrnffl解析:程序首先需要接受用户输入的值,根据程序代码可以判断,使用变量num来存放用户输入的值,使用循环实现递推,根据题面“要求从键盘输入n值,输出对应项的值
16、”,可知循环从2开始,到用户输入的值结束,也就是“Fom=2Tonum”。根据题面给出的公式“当nl时,f(n)=f(nl)+f(n2)Z可知第n项的值总等于它前两项(即第n-2项与第n-1项)之和,在程序For循环中,总用f2表示第r项,K)表示第n2项,fl表示第nl项,所以f2=f+fl2.1515解析:本题考查VBA程序中过程调用的知识。由于VBA中,默认情况下,参数是按地址传递(ByRef),对形参的改变会影响到实参。本题中Z的值等于a+b,这个Z值会返回给实参c,所以文本框中显示的内容为15o3.1、找到要操作的数据源,打开“教学管理JM始”数据库。2、在工具栏上找到“关系”按钮单
17、击,在弹出的空白窗口上单击鼠标右键,选择“显示表”,在出现的“显示表”,选择题目要求的相关表,点击添加,原来的空白处就会出现相应的表。3、将鼠标放置于“课程”中的“课程编号”,按住左键拖动到“选课成绩”表中的“课程编号”,放开鼠标即可,在编辑关系选择在“实施参照完整性”、”级联更新相关字段”、“级联删除相关字段”前面的小框里面打上勾。后单击“创建”即可。4、同理建立“学生”与“选课成绩”之间的关系即可。4.第一题:步骤:1、找到要操作的数据源,打开“教学管理一原始”数据库。2、鼠标右键单击“学生”表,选择“复制”,再在工具栏上找到“粘贴”图标,在“表名称”中输入“学生表备份”,同时选择“结构和
18、数据”,单击“确定”即可。3、鼠标右键单击“学生表备份”表,选择“重命名”,再输入“学生表备份2009”即可。第二题:步骤:1、在打开的数据库中打开“教师”表,把鼠标移动到“教师编号”字段,鼠标变成“向下黑色箭头”时单击左键,选中整个字段。2、再单击鼠标右键,选择“隐藏列”单击即可。3、在当前表的灰色出单击鼠标右键,选择“取消隐藏列”,在弹出的窗口的“教师编号”前面的方框打上小勾即可。第三题:1、在第二题的基础上,在挡开的教师表中操作,把鼠标移动到“姓名”字段,鼠标变成“向下黑色箭头”时单击左键,选中整个字段。2、再单击鼠标右键,选择“冻结列”单击即可。3、在第二步不关闭表的情况下,同样是选择
19、整列“姓名”,单击鼠标右键,选择“取消对所有列的冻结”即可。第四题:1、在第三题的情况下,不关闭表的情况下,同样是选中整列字段“教师编号“,按住鼠标左键不放,看到鼠标下方加有虚线的方框时拉动鼠标移动到“姓名”列后面,放开鼠标即可。第五题:1、找到要操作的数据源,打开“教学管理JM始”数据库。2、打开“教师”表,选中“教师”表的任意一行,然后单击鼠标的右键,选择“行高”;或者在“格式”中选择“行高”,再弹出的行高的窗口中输入想要的高度,如题目的要求是“18”,单击“确定”即可。3、打开“教师”表,选中“教师”表的任意一列,然后单击鼠标的右键,选择“列宽”;或者在“格式”中选择“列宽”,再弹出的行
20、高的窗口中输入想要的高度,如题目的要求是“18”,单击“确定”即可。4、设置完成后保存即可。第六题:1、在第五题的基础上,在“教师”表的灰色处单击鼠标右键,选择字体,在弹出来的窗口上选择和设置题目的要求后,确定、保存即可。第七题:1、找到要操作的数据源,打开“教学管理JM始”数据库。2、打开“教师”表,在工具栏上找到“格式”,单击有选择“数据表”,在“设置数据表格式中按题目的要求选择需要的设置即可。同理操作即可完成。5.44解析:M(6)的值为12-6=6;则有M(2+6)=M(8)的值为12-8二4o6.2020解析:栈是限定在一端进行插入与删除的线性表。在栈中,允许插入与删除的一端称为栈顶
21、,而不允许插入与删除的另一端称为栈底。栈顶元素总是最后被插入的元素,从而也是最先能被删除的元素:栈底元素总是最先被插入的元素,从而也是最后才能被删除的元素。即栈是按照“先进后出”或“后进先出”的原则组织数据的,因此,栈也被称为“先进后出”表或后进先出”表。通常用指针top来指示栈顶的位置,用指针bottom指向栈底。由题意可知栈顶指针to=30,bottom=49,则栈中具有的元素应该为bottom-top+1即49-30+1=20。7.第一题:1、找到要操作的数据源,打开“教学管理”数据库。2、用“设计视图”打开“学生”表,将光标放至学生编号”处,再在字段属性”中选择“字段大小”,手动输入阿
22、拉伯数字“10”。3、同理,把光标放到“年龄,处,在“字段大小”中选择“整型L保存即可。第二题:1、再第一题保存的基础上,“设计视图”打开“学生”表,将光标放至入校日期处,再在“字段属性”中“格式”处,选择“短日期唧可。第三题:1、再第二题保存的基础上,“设计视图”打开“学生”表,将光标放至上姓名”处,再在“字段属性”中“标题”中输入“学生姓名”,保存即可。第四题:1、再第三题保存的基础上,“设计视图打开学生”表,将光标放到“性别”处,再在“字段属性”中“默认值中输入“男”,保存即可;在“字段属性”中“默认值中输入“Date()”,保存即可。注意字符匹配问题。第五题:1、再第四题保存的基础上,
23、“设计视图打开学生”表,将光标放至入校日期处,再点击“输入掩码”区域中的选择长日期类型,下一步,选择占位符”为“铲,下一步”,“完成”,保存即可。第六题:1、再第五题保存的基础上,“设计视图打开学生”表,将光标放到“年龄”处,再在“有效性规则”中输入between16and40或=16andv=40”保存即可。=2或姓名like?*”,保存即可。3、在不关闭窗口的情况下,将光标放到“性另/处,再在“有效性规则”中输入“男or女或性别in(“男,”女T,保存即可。第七题:1、再第六题保存的基础上,“设计视图打开学生”表,将光标放到“年龄”处,在“字段属性”中选择“有效性文本“,再在其中输入“学生
24、的年龄只能在16岁到40岁之间!”,保存即可。2、将光标放至,姓名,处,在“字段属性”中选择“有效性文本”,再在其中输入“学生的姓名必须两个字或两个字以上!”,保存即可。3、将光标放到“性另产处,在“字段属性”中选择“有效性文本“,再在其中输入“性别只能输入“男”或“女”!”,保存即可。第八题:1、再第六题保存的基础上,“设计视图打开学生”表,将光标放到“简历”处,再在“必填字段”和“允许空字符串”都设置为“是”,保存即可。第九题:1、找到要操作的数据源,打开“教学管理”数据库。2、用“设计视图打开“学生”表,在工具栏上单击“索引”图标,弹出索引对话框。在“索引名称”下输入索引名称“性别一年龄
25、一组合索引Z在“字段名称,中选择,性别,在“排序次序”选择“升序”;同理,创建下一组索引,保存即可。8.1、找到要操作的数据源,打开“教学管理”数据库。2、选择数据库的对象“表”,可以在窗口上双击“通过输入数据创建表”或者单击“新建,在打开的窗口中选择“数据表视图”。单击“确定”按钮,把鼠标放置于“字段1”上,变成向下箭头以后“单击一下”,使得整个字段变成黑色,然后单击“鼠标右键”一次,选择“重命名列”,输入所要求的字段名称;同理一直操作完成,命名完成以后单击“保存”,输入“学生数据视图”,单击“确定”即可。3、再用“设计视图”打开学生数据视图”表进行表的“数据类型”进行设计,设计完成后单击“
26、保存”即可。9.【审题分析】本题主要考查追加表查询,追加表一般情况用于数据库的复制、转移。在表中条件表达式是:数学语文+物理=270。【操作步骤】步骤L在“samp2.msb”窗口下,单击“查询”对象,添加“tStud”表。关闭对话框。执行【查询】一【追加表查询】菜单命令,在追加表对话框内输追加到表名称“tTemp”,双击“身份证号、“姓名”字段,在“字段”所在行的第三列列出条什运算式:数学+语文】+(物理】,在其对应的“条件”行内输入:=270,追加到所在行选择“入学成绩”表。如图40所示。步骤2:单击“保存”按钮,输入文件名:“qt4”单击“确定”按钮,关闭“qt4”查询窗口。步骤3:关闭
27、“samp2.mdb”数据库窗口。10.2828解析本题考查循环的知识。这类问题循环体中只有一条语句,就是sum=sum+1,这样的话问题就变成了判断这条语句共执行多少次,也就是最内层循环一共会执行多少次。可以这样分析:当i=l,j=l时,内循环执行5次;当i=1,j=2时,内循环执行4次;当i=1,j=3时,内循环执行3次;当i=l,j叫时,内循环执行2次,这样的话外循环第一次时内循环共执行5+4+3+2=14次;当i=2时,从2开始循环,那么内循环共执行4+3+2=9次;当i=3时,j从3开始循环,那么内循环共执行3+2=5次,所以总的执行次数为14+9+5=28次。11.12.13.14
28、.15.16. 选中“录影集”表,右键单击选择“设计视图。选中“长度”字段,在字段属性的格式行选择“日期”。打开“录影集”表,输入对应数据。17.18.19.20.21 .A解析:选项A是文本框控件,用于显示、输入或编辑窗体的基础记录数据源,显示计算结果或接收用户输入数据,为正确答案:选项B是标签控件,用于显示说明文本的控件;选项C是子窗体/了报表控件,用来显示来自多个表的数据;选项D是选项卡控件,用于创建一个多页的选项卡窗体或选项卡对话框,可以在选项卡控件上复制或添加其他控件。22 .C解析:通常认为,面向对象方法具有封装性、继承性、多态性几大特点。就是这几大特点,为软件开发提供了一种新的方
29、法学。封装性:所谓封装就是将相关的信息、操作与处理融合在一个内含的部件中(对象中)。简单地说,封装就是隐藏信息。这是面向对象方法的中心,是面向对象程序设计的基础。继承性:子类具有派生它的类的全部属性(数据)和方法,而根据某一类建立的对象也都具有该类的全部,这就是继承性。继承性自动在类与子类间共享功能与数据,当某个类作了某项修改,其子类会自动改变,子类会继承其父类所有特性与行为模式。继承有利于提高软件开发效率,容易达到一致性。多态性:多态性就是多种形式。不同的对象在接收到相同的消息时,采用不同的动作。例如,一个应用程序包括许多对象,这些对象也许具有同一类型的工作,但是却以不同的做法来实现。不必为
30、每个对象的过程取一过程名,造成复杂化,可以使过程名复用。同一类型的工作有相同的过程名,这种技术称为多态性。经过上述分析可知,选项C的说法是错误的。23.B解析:数据元素在计算机存储空间中的位置关系与它们的逻辑关系不一定是相同的,而且一般不可能相同。数据的逻辑结构在计算机存储空间中的存放形式称为数据的存储结构,也称数据的物理结构。24 .AnA。【解析】头结点不仅标识了表中首结点的位置,而且根据单链表(包含头结点)的结构,只要掌握了表头,就能够访问整个链表,因此增加头结点的目的是为了便于运算的实现。n25.B26 .A解析:用E-R图可以简单明了地描述实体及其相互之间的联系,用E-R图还可以方便
31、地描述多个实体集之间的联系和一个实体集内部实体之间的联系。因此,选项A中的说法是正确的,而选项B与C中的说法都是错误的。为了建立用户所要求的数据库.必须把概念结构(用E-R图表示的概念数据模型)转换为某个具体的数据库管理系统所支持的数据模型,这就是逻辑结构设计所要完成的任务。在已给定数据库管理系统的情况下,数据库的逻辑设计可以分两步来进行:将概念模型转换成一般的数据模型;将一般的数据模型转换为特定的数据库管理系统所支持的数据模型。由此可知,用E-R图表示的概念数据模型不仅能转换为关系数据模型,还可以转换为其他数据模型,如网状模型和层次模型等。因此,选项D中的说法也是错误的。27 .C解析:Da
32、te函数显示的是当前的日期。Time函数显示的是当前的时间。Year函数需要参数,它返回的是输入参数中的年份。Now函数显示的是当前的日期和时间。28 .A解析:“设计”视图是用于创建窗体或修改窗体的窗口;“窗体”视图是显示记录数据的窗口,主要用于添加或修改表中的数据数据表”视图是以行列格式显示表、查询或窗体数据的窗口;而“透视表视图是没有的。29 .A解析:插入排序通过数据元素的交换来逐步消除线性表中的逆序,所以关键字比较的次数与记录的初始排列次序有关,在待排序的元素序列基本有序的前提下,效率最高。而选择排序和堆排序的关键字比较的次数与记录的初始排列次序无关。快速排序虽然与记录的初始排列次序
33、有关,但在待排序的元素序列基本有序的前提下,效率低于插入排序。30 .D解析:中序遍历的递归算法如下:遍历左子树;访问根结点;遍历右子树。前序遍历的递归算法如下:访问根结点;遍历左子树;遍历右子树。后序遍历的递归算法如下:遍历左子树;遍历右子树;访问根结点。由后序遍历结果dabec可知c是根结点,且无右子树。再由左子树的后序遍历结果dabe可知,e是左子树的根结点,且由左子树的中序遍历结果deba可知,d是左子树的左子树结点,b和a是左子树的右子树结点。再次由后序遍历结果ab可知,a是左子树结点。b是根结点。至此,各结点在树中的位置已完全确定。31.32.33.34.35.36.37.38.39.40.41.42.43.44.