ImageVerifierCode 换一换
格式:DOCX , 页数:11 ,大小:87.96KB ,
资源ID:29809724      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/29809724.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(高考浙江版高考信息技术 模拟演练 20.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

高考浙江版高考信息技术 模拟演练 20.docx

1、高考浙江版高考信息技术 模拟演练 20第6节VB访问Access数据库模拟演练1.最新国际体操竞赛的评分规则简单描述如下:两位D组裁判分别打“难度分”,取平均值作为该参赛选手的最终难度分。五位E组裁判分别打“完成分”,在5个E组打分结果中,去掉一个最高分和一个最低分,然后取平均值作为该参赛选手的最终完成分。难度分和完成分之和,即该参赛选手的最终得分。例如:某参赛选手打分如下:D组裁判打分E组裁判打分6.56.99.59.08.38.87.6该选手“难度分”为(6.5+6.9)/2=6.7。E组裁判打分去掉一个最高分和一个最低分之后,计算“完成分”为(9.0+8.3+8.8)/3=8.7。所以该

2、选手最终得分为6.7+8.7=15.4分。小杜编写一个VB程序:程序运行时从数据库读取参赛选手人数和参赛选手的打分数据,依次存储在数组a中;单击“统计”按钮,依据数组a中的相关数据统计各选手的“难度分”“完成分”和“最终得分”,并在列表框List1中输出。数组a各元素的含义如下,程序运行界面如图所示。数组元素数组元素的含义a(0)存储参赛人数na(1)a(1)和a(2)为第1位选手的D组两位裁判的打分。 a(3)、a(4)、a(7)为第1位选手的E组五位裁判的打分a(7)a(8)a(8)和 a(9)为第2位选手的D组两位裁判的打分。 a(10)、a(11)、a(14)为第2位选手的E组五位裁判

3、的打分a(14)实现上述功能的VB程序如下,请回答下列问题:(1)根据程序运行界面中的数据及数组a各元素的含义,数组元素a(8)和a(9)的值为(填序号:A.6.2和5.6/B.5.8和6.2/C.6.1和5.5)。(2)分析程序,可知数据库的文件名为。(3)请在划线处填入合适的代码。Dim a(0 To 210) As Single 数组大小满足处理要求Dim d(1 To 30) As Single 依次各选手的难度分Dim e(1 To 30) As Single 依次各选手的完成分Dim f(1 To 30) As Single 依次各选手的最终得分Private Sub Comman

4、d1_Click()本过程从数据库读取相关数据,存储在数组a中Dim conn As New ADODB.ConnectionDim rs As New ADODB.Recordsetconn ConnectionString=“provider=Microsoft.ACE.OLEDB.12.0; data source=”+“成绩.accdb”conn.OpenSet rs.ActiveConnection=conn本过程的其他语句略End SubPrivate Sub Command2_Click()依据数组a中的相关数据统计各班级平均分Dim i As Integer, j As Int

5、eger, n As Integer, p As IntegerDim max As Single, min As Single, sum SingleFor i=1 To np=(i-1)*7+1d(i)=(a(p)+a(p+1)/2sum=0 max=a(p+2) : min=a(p+2)For j=p+2 To p+6sum=sum+a(j)If a(j) max Then max=a(j)min=a(j)Next je(i)=(sum-max-min)/3f(i)=d(i)+e(i)List1.AddItem Str(i)+“ ”+Str(d(i)+“ ”+Str(e(i)+“ ”+S

6、tr(f(i)Next iEnd Sub答案(1)C(2)成绩.accdb(3)n=a(0)If a(j)min Then解析本题综合考查算法的程序实现和VB访问数据库。(1)根据程序运行界面中的数据及数组a各元素的含义,知数组元素a(8)和a(9)的平均值为5.8分,也就是第二位选手的难度分为5.8分,只有C选项的平均分为5.8分。(2)数据库的文件名的扩展名格式为“accdb”,通过分析数据库连接部分代码,容易找出数据库的文件名为“成绩.accdb”。(3)变量n代表参赛选手的人数,根据题意,数组元素a(0)为参赛选手人数,所以需要将数组元素a(0)的值赋给变量n,即n=a(0);通过分析

7、得知变量min代表五位E组裁判打“完成分”的最低分。通过连续求数组中最值的算法得出处答案为If a(j)min Then。2.某单位招考公务员,2010年和2011年分别有4 020名和2 000名考生报名,下列VB程序用于统计两次考试都参加的考生信息。程序界面设计如图所示,2010年和2011年的考生信息分别显示在List1和List2中,点击“统计”按钮,在List3中显示两次考试都参加的考生信息和总人数。(1)实现上述功能的 VB 程序如下, 请在横线处填入合适代码。Dim a (1 To 4020 )AsStringDim b (1 To 2000 )AsStringPrivateSu

8、bForm_Load( )Dim conn As New ADODB.ConnectionDim rs As New ADODB.RecordsetDim constr As stringconstr=“Provider=Microsoft.ace.OLEDB.12.0;”constr=constr &“Data Source=” & App.Path+“dataKaoSheng.accdb”conn.ConnectionString=constrconn.open()Dim sql As String将参加2010年下半年考试的考生的身份证号码按升序存放在a数组中sql=“select *

9、from kaoshengInfowhereyear=2010order by sfzh asc”rs.Open sql,conni=0Do While Not rs.EOFi=i+1a(i)=rs(“sfzh”)List1.additem(a(i)rs.MoveNextLoop将参加2011年下半年考试的考生的身份证号码按升序存放在b数组中sql=“select * from kaoshengInfowhere year=2011order by sfzh asc”rs.Open sql,conni=0Do While Not rs.EOFi=i+1b(i)=rs(“sfzh”)List2.

10、additem(b(i)rs.MoveNextLooprs.CloseEnd SubPrivate Sub Command1_Click ()DimbotAs Integer , topAsInteger , mAsIntegerDimiAsInteger ,ansAsInteger ans=0Fori=1To2000 bot=1 DoWhile bot b(i)(2) kaoshengInfo解析本题考查数据库的使用和对分查找。(1)题目中需要找出两年都参加的人数,采取的做法是枚举考生较少的一年的人,也就是b数组,同时利用对分法去验证枚举到的人在另一年(a数组中)是否存在。对分的上界为bot

11、,下界为top,分别为1和4 000,若查找到则输出并将ans加1,否则当查找值b(i)小于中间值a(m)时,改变下界,是一个标准的对分查找程序。(2)注意到程序中的“select * from kaoshengInfowhere year=2011order by sfzh asc”。这是数据库查询语句,表示从kaoshengInfo这张数据表中查询,where year=2011表示查询所有2011年的记录。3.小王为学校教务处编写了一个排考场座位的VB程序。考场采用“6排5列”共30人的模式。程序执行后,考生的考号与姓名显示在列表框List1中,单击“考场座位”按钮Command1,考场

12、号与座位显示在Text1中,程序运行界面如图a所示,考生数据存放在数据库文件“kaochang.accdb”中,数据表如图b所示。 实现上述功能的VB程序如下,请回答下列问题:(1)当“Form_Load()”事件处理过程运行结束时,变量x的值为。(2)请在横线处填入合适的代码。Private Sub Command1_Click()Dim y As IntegerDim start As Integer考场第1位数据元素的下标Dim pa As Integer 数据库导入VB时学生数据下标Dim pb As Integer 考场座位数据下标Dim i As Integer,j As Inte

13、ger,k As Integer,m As Integerstart=1pa=startrecCount=x-1If recCount Mod 30 0 ThenFor i=1 To y将当前考生人数添加到30的整数倍recCount=recCount+1sName(recCount)=“”Next iEnd IfFor j=1 To recCount / 30pa=startpb=startFor i=1 To 30kcsName(pb)=sName(pa)pb=pb+1If i Mod 5=0 Thenpa=start+i 5ElseEnd IfNext istart=start+30Ne

14、xt jText1.Text=start=1For k=1 To recCount / 30m=startText1.Text=Text1.Text+“第”+Str(k)+“考场”+vbCrLfvbCrLf为换行标志符,实现Text1中内容换行显示For i=1 To 6For j=1 To 5Text1.Text=Text1.Text+“”+kcsName(m)m=m+1Next jText1.Text=Text1.Text+vbCrLfNext iText1.Text=Text1.Text+vbCrLf+vbCrLfNext kEnd SubPrivate Sub form_load()D

15、im myconn As New ADODB.ConnectionDim myrecord As New ADODB.Recordsetmyconn.ConnectionString=“provider=microsoft.ace.oledb.12.0;data source=e:kaochang.accdb”myconn.Openstrsql=select*from三中 myrecord.Open strsql,myconn x=1 List1.AddItem“考号姓名” List1.AddItem“-”Do While Not myrecord.EOF读取数据库数据,存入数组kh(x)、s

16、Name(x)中,代码略 List1.AddItem kh(x)+“ ”+sName(x) x=x+1 myrecord.MoveNextLoopmyrecord.CloseEnd Sub答案(1)43(2)y=30-recCount Mod 30pa=pa+6start=start+30解析(1)数据库名称是kaochang.accdb,数据表名称是“三中”,注意数据表是没有扩展名的。变量x记录读取到的学生数据的数组下标,当x=42时,Do While Not myrecord.EOF是指到数据表的最后一条记录后退出循环,当前条件成立,还在数据表内,所以继续执行,x=x+1,x为43,跳出循

17、环。(2)If recCount Mod 30 0 Then y=30-recCount Mod 30 For i=1 To yrecCount=recCount+1sName(recCount)= Next iEnd If选择嵌套循环结构的作用:首先判断学生人数是不是30的倍数,若不是,求出相差人数,通过循环结构将加入的数组元素赋值为空字符串。If i Mod 5=0 Then pa=start+i 5Elsepa=pa+6End If本段选择结构的作用:当i不是5的倍数时,是考场中的一行,根据题图示意,应该下标加6。For k=1 To recCount / 30 m=start Text1.Text=Text1.Text+“第”+Str(k)+“考场”+vbCrLfvbCrLf为换行标志符,实现Text1中内容换行显示For i=1 To 6此处略Next iText1.Text=Text1.Text+vbCrLf+vbCrLfstart=start+30Next k此处程序段的作用:分考场显示学生姓名,For k=1 To recCount / 30表示根据考场个数确定循环次数。第2考场时,开始的kcsName数组下标加30。

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1