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

加入VIP,免费下载
 

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

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
下载须知

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

版权提示 | 免责声明

本文(2018版选考总复习信息技术必修3算法与程序设计测试:第1单元 算法及VB语言(教师版) WORD版含答案.doc)为本站会员(高****)主动上传,免费在线备课命题出卷组卷网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知免费在线备课命题出卷组卷网(发送邮件至service@ketangku.com或直接QQ联系客服),我们立即给予删除!

2018版选考总复习信息技术必修3算法与程序设计测试:第1单元 算法及VB语言(教师版) WORD版含答案.doc

1、第一单元算法及VB语言ks5u考试标准考试内容考试要求考试属性1.算法的基本概念及常用表示方法b加试2.面向对象程序设计的基本思想与方法b3.类、对象、属性、方法、事件和事件处理的概念及应用c4.VB应用程序的调试及运行c5.VB基本数据类型、常量、变量与数组c6.VB各类基本运算、表达式与常用的标准函数c7.常用VB语句c8.过程与自定义函数cVB应用程序是按模块化的方式组成的,一个程序模块是程序的一部分,每个模块负责解决整个应用问题的一部分任务。程序模块分为过程和函数两种。一、过程可以将程序划分成一个个较小的逻辑单元,这样每个逻辑单元可以构成一个过程。过程中的代码可以被重复调用,从而避免了

2、不必要的代码的重复编制,减少了编程的工作量。构造事件处理过程Sub事件处理过程名(参数表)语句块End Sub其中,事件处理过程名必须符合下面的规则:对象名_事件的标准名。VB的一些常用对象上的常见事件的标准名见下表:对象事件处理过程名说明文本框TextText_Click在文本框内单击鼠标Text_DblClick在文本框内双击鼠标Text_KeyPress文本框被激活后,用户在键盘上按下了某个键命令按钮CommandCommand_Click在命令按钮上单击鼠标标签LabelLabel_Click在标签上单击鼠标窗体FormForm_Load窗体装载通过过程:是一个独立的程序段,不同的事件

3、可能需要使用同一个程序段时,可以把这个程序段单独地建立成一个通用过程,供其他事件处理过程或其他通用过程调用。二、函数函数是类似于过程的另一种程序模块,不同之处是函数执行完成后,函数的计算结果被送到函数的调用点上,供程序的后继部分继续进行处理。自定义函数格式:Function函数名(参数表) As类型名语句块End_Function函数名是为函数指定的名称,参数表是对一函数需要的原始数据类型一一地进行说明,As后的类型名,是说明函数的计算结果,即函数返回值的数据类型。自定义函数的语句块中至少要有一个形如“函数名表达式”的语句,这样,表达式的计算结果才能作为函数的返回值,被VB送到函数的调用点上。

4、过程:将程序划分为一个个较小的逻辑单元,每个逻辑单元构成一个过程。过程中的代码可以被重复地调用。过程分成两类:事件处理过程和通用过程。事件处理过程:Sub事件处理过程名(参数表)语句块End SubVB预设的事件有:Click(单击)、DblClick(双击)、KeyPress(按键)、Load(装载)、Change(改变)等。VB的一些常用对象上的常见事件的标准名有:文本框Text:Text1_Click、Text1_DblClick、Text1_KeyPress、Text1_Change命令按钮Command:Command1_Click标签Label:Label1_Click窗体Form

5、:Form_Load(窗体装载)【典例1】某VB程序如下:Private Sub Text1_KeyPress(KeyAscii As Integer)If KeyAscii13 ThenText2.TextText1.TextStr(5)End IfEnd Sub程序运行时,能触发该事件过程的是()A单击文本框Text1B单击文本框Text2C文本框Text1被激活后,用户在键盘上按下某一个键D文本框Text2被激活后,用户在键盘上按下某一个键解析事件处理过程名必须符合规则:对象名_事件的标准名。Text1_KeyPress(KeyAscii As Integer)中Text1是这个事件过程

6、的触发对象,所以排除B、D选项。KeyAscii是事件过程的参数,意思是键盘输入后传递给程序的ASCII码。结合if语句,当按下键盘上某一个键传递给程序的ASCII码值等于13的时候执行then后面的语句。所以答案选C。答案C【变式1】有如下VB程序段:Dim i As Integer,c As String,s As String,t As Strings“China2014IT”:t“”For i1 To Len(s)cMid(s,i,1)If c“a” And c“z” Then ttcNext iLabel1.Captiont该程序段运行后,标签Label1中显示的内容是()A2014

7、 BChinaIT China DCIT解析该程序的功能是取出字符串s中的小写字母。答案C【典例2】下面VB程序的功能为:在文本框Text1和Text2中输入两个整数,单击按钮对象Command1,在标签对象Label1中显示这两个数的差。Function lsc(x,y) As IntegerIf xy ThenlscxyElselscyxEnd IfEnd FunctionPrivate Sub Command1_Click( )Dim a1 As Integer,a2 As Integera1Val(Text1.Text)a2Val(Text2.Text)Label1.Caption_E

8、nd Sub要实现上述功能,程序画线处应填入的语句为()Alsc(x,y)Blsc(Text1.Text,Text2.Text)ClscDlsc(a1,a2)解析自定义函数lsc用于求两个整数的差,由于输入的整数为a1、a2,因此画线处应填的语句为lsc(a1,a2),答案为D。答案D【变式2】某VB应用程序的两个事件过程如下:Private Function out(x As Integer,y As Integer,z As Integer) As IntegerDim temp As IntegerIf xy Then tempy Else tempxIf tempz Then temp

9、zouttempEnd FunctionPrivate Sub Command1_Click( )Dim a As Integer,b As Integer,c As Integera1b2c3Text1.Textout(a,b,c)End Sub程序运行时,单击命令按钮command1后,在文本框Text1中显示的内容是()A0 B1 C2 D3解析自定义函数out的功能是求三个数中的最小数,1、2、3三个数中的最小数为1,因此答案为B。答案B【典例3】小明在VB中定义了以下函数,功能是求a和b的最大公约数。Function gcd(a As Integer,b As Integer) As

10、 IntegerDo While b0ca Mod babbcLoopEnd Function调试中发现计算结果一直是0。经过仔细观察与分析,发现错误的原因是()A函数名有错B变量c没有定义C函数没有返回值Db0应该改为b0解析A选项函数名的命名规则同变量名。VB中可以省略一些变量的定义,未定义的变量即为通用类型,即根据赋值变化数据类型,所以B选项局部变量c未定义,不影响程序运行。D选项把循环条件改成b0反而会使Do WhiheLoop循环进入死循环。所以正确答案是C。答案C【变式3】在VB中,设已定义函数过程f,它有三个实型传值参数。设a,b,c为实型变量,则下列能调用该函数的正确语句是()

11、Af Bf(ab,bc)Cf(ab,bc,ca) Dfab,bc,ca解析注意函数的格式。答案C【典例4】(20133月浙江会考)如果一个整数是另一个整数的平方,则称该数是“完全平方数”。如:111,422,933,所以1、4、9是完全平方数。下列VB程序可以求出1到n(1n1 000)之间的所有完全平方数之和:Private Sub Command1_Click( )Dim s As Long用于存储1到n之间所有完全平方数之和Dim i As Integer,n As IntegernVal(Text1.Text)s0For i1 To nIf ok(i) Then ssi当ok函数返回值

12、为True时,执行ssiNext iLabel1.CaptionStr(s)End Subok函数用于判断变量t的值是否为完全平方数Function ok(t As Integer) As BooleanDim k As IntegerIf k*kt Then okTrue Else okFalseEnd Function方框中的正确语句是()AkInt(Sqr(t) BtInt(Sqr(k)Ckt2 Dtk2解析在判断t是否为完全平方数之前,先取出k的值,使kInt(Sqr(t),若正好有k*kt,则得出结论:t是完全平方数,okTrue。答案A【典例5】(201510月浙江选考)某数据加密

13、方法描述如下:(1)以字节为单位进行加密处理;(2)将1个字节的8位二进制数分割成前4位与后4位两个二进制数;(3)分别将上述两个4位二进制数转换为十进制数;(4)将每个十进制数转换为1个加密字符,对应的“密码表”如下:值(十进制)0123456789101112131415加密字符IlikeCHNpostcard小明按照上述方法,设计了一个字符串(仅包含ASCII字符)加密的VB程序,功能如下:单击“加密”按钮Command1,程序依次将文本框Text1中每个字符的ASCII码值作为1个字节转换为两个加密字符,连接这些加密字符,最后在文本框Text2中输出加密结果。下表显示了字符串中一个字符

14、的加密过程:程序运行效果如图所示。实现上述功能的VB程序如下:(1)请在画线处填入合适代码。Private Sub Command1_Click( )Dim n As Integer,s As String,i As Integer,ss As StringDim a As Integer存储加密前字符的ASCII码Dim b1 As Integer,b2 As Integer分别存储分割、转换后的两个十进制数sText1.Text_For i1 To naAsc(Mid(s,i,1)b1a16b2a Mod 16ssssCode2Char(b1)Code2Char(b2)Next iText

15、2.TextssEnd Sub十进制值转换为加密字符的函数Function Code2Char(c As Integer) As StringDim s As Strings“IlikeCHNpostcard”Code2Char_End Function(2)若将“密码表”中值为“0”对应的加密字符“I”改成“i”,加密后的密文可能无法解密,原因是_。解析本题考查过程和自定义函数,常用标准函数等。(1)根据题意,对文本框Text1中输入的字符串逐个字符加密,需算出字符串的长度n,作为循环变量的终值,即nLen(s)。加密后的字符串(密文)存储于字符串变量ss中。自定义函数Code2Char(

16、)中,根据密码表对应的每个十进制数转换为1个加密字符,第一个加密字符对应十进制值为0,故当十进制数值为6时,对应的字符H是第61个字符位置,即当十进制数值为c时,对应的字符是第c1个字符位置,用取子串函数Mid(s,c1,1)。(2)若密码表中值为0对应的加密字符I改为i,造成同时对应加密字符i,当解密时,加密字符i对应的十进制有两个值0和2,不唯一而出错,从而无法解密。答案(1)nLen(s)ks5u或nLen(Text1.Text)Mid(s,c1,1)(2)加密字符i对应两个值0,21(2012浙江会考)字符串变量a的值为“Hello,world!”,下列Visual Basic表达式的

17、值是“world”的是()ALen(a,6,5) BMid(a,6,5)CMid(a,7,4) DMid(a,7,5)解析Mid(X,n,k)的作用是取字符串X中第n个字符起长度为k的子串。Mid(a,7,5)的功能是取字符串变量“Hello,world!”中第7个字符“w”起长度为5的子串,即“world”。答案D2(20143月浙江会考)运行如下VB程序:Private Sub Command1_Click( )Dim x As IntegerDim y As StringxVal(Text1.Text)If x95 Theny“非常满意”ElseIf x80 Theny“满意”ElseI

18、f x60 Theny“基本满意”Elsey“不满意”End IfLabel1.CaptionyEnd Sub在文本框Text1中输入50,单击命令按钮Command1后,在标签Label1中显示()A非常满意 B满意C基本满意 D不满意解析当x50时,执行y“不满意”。答案D3某对象的一个事件过程代码如下:Private Sub Obj_Click( )ss1Text1.TextStr(s)End Sub下列说法正确的是()A该过程的过程名为“Obj”B该对象的类名为“Sub”C该对象的对象名为“Obj_Click”D该事件是一个“单击”事件解析由题中可以看出是一个“单击”事件。答案D4窗体

19、装载事件过程可以对程序进行初始化。VB窗体装载事件过程的名称是()ACommand1_Click BForm_KeypressCForm_Load DForm_DblClick答案C5下面VB程序的功能是判断一个数是否为一个完全平方数。在文本框Text1中输入一个整数,单击按钮对象Command1,如果此数是一个完全平方数,则在标签对象Label1中显示“Yes”,否则显示“No”。所谓完全平方数,是指一个数如果是另一个整数的完全平方,那么我们就称这个数为完全平方数,也叫平方数。例如,1、4、9、16等是完全平方数。Function judge(x) As BooleanjudgeFalseI

20、f xSqr(x)2 Then _End FunctionPrivate Sub Command1_Click( )Dim x As IntegerxVal(Text1.Text)If judge(x)ThenLabel1.Caption“Yes”Else_End IfEnd Sub为实现上述功能,请分别在画线和画线处填入合适的语句。画线处应填入的语句为_画线处应填入的语句为_解析分析可知,处代码是完全平方数的情况,因此应填入judgeTrue;根据题意,如果输入的整数不是完全平方数,则在标签对象Label1中显示“No”,因此处代码为Label1.Caption“No”。答案judgeTru

21、eLabel1.Caption“No”6在VB中,有如下程序:Function max(x As Integer,y As Integer) As IntegerIf xy Then maxx Else maxyEnd FunctionPrivate Sub Command1_Click( )Dim a As Integer,b As Integer,c As IntegerDim d As Integer,z As IntegeraVal(Text1.Text):bVal(Text2.Text):cVal(Text3.Text)dmax(a,b)zmax(d,c)Text4.TextStr(

22、d)Text5.TextStr(z)End Sub运行该程序,在文本框Text1、文本框Text2、文本框Text3中分别输入2、5、6后,单击命令按钮Command1,文本框Text4中显示的是_,文本框Text5中显示的是_。解析由程序运行可知,Text4显示2,Text5显示6。答案261下列问题不能用算法描述的是()A已知a、b、c的值,求一元二次方程ax2bxc0(a0)的实数根B计算某个班级学生身高的平均值C列出方程y2x1的所有实数解D根据三角形三边长度求三角形面积解析选项C中,所有的实数解个数有无数个,所以它违背了算法的有穷性特征,因此不能用算法描述。答案C2在VB数组说明语句

23、Dim d(3 To 8,4 To 9)As Boolean中,数组d的变量类型是()A长整数型 B字符串型C单精度实数型 D逻辑型解析“Boolean”表示逻辑型数组。答案D3某宾馆的房间号由5位字符组成(例如A0823表示A幢8层33号房间),末位数字为奇数时表示房间朝南、为偶数时表示房间朝北。字符串变量s中存储了1个房间号,下列能正确判断房间朝南的VB表达式是()AVal(Mid(s,5,1)Mod 21BVal(Mid(s,5,1)Mod 20CVal(Mid(s,5,1)21DVal(Mid(s,5,1)20解析要判断房间朝南,则先取出房间号中的第5位数字,然后将其转换为数值后除以2

24、,若余数为1,则表示是奇数。答案A4(20129月浙江会考)下列VB表达式的值等于3的是()ASqr(2)1 BAbs(1)2CAsc(“1”)2 DLen(“2”)1解析Sqr(x)功能是求x的算术平方根,Abs(x)功能是求绝对值,Asc(x)功能是将字符转换为ASCII,Len(x)功能是计算字符串的长度,字符串“2”有两个字符,因此Len“2”2。答案D5(20133月浙江会考)下列VB函数返回值为数值的是()AChr(x) BStr(x)CVal(x) DMid(x,n,k)解析Chr(x)功能是将ASCII转换为字符。Str(x)的功能是将数值转换为字符串。Val(x)的功能是数字

25、字符转换为数值。Mid(x,n,k)的功能是取字符串x中第n个字符起长度为k的子串。答案C6下面VB程序的功能是求100999间被3除多2,被5除多3的所有整数,并统计符合条件的数的个数。Private Sub Command1_Click( )Dim i As Integer,P As Integerp0For i100 To 999If _ ThenList1.AddItem Str(i)_End IfNext iList1.AddItem Str(p)End Sub为实现上述功能,请在程序划线处填入合适的语句:划线处应填入的语句为:_;划线处应填入的语句为:_。解析注意求余运算的使用,变

26、量P用于统计结果。答案i Mod 32 And i Mod 53pp17(20159月浙江选考模拟)有如下VB程序:Dim i As Integer,j As Integer,k As String,n As Integern3List1.ClearFor i1 To nk“”For j1 To ikk“*”Next jList1.AddItem kNext i该程序运行中,在列表框List1中显示的是()解析本题考查对VB循环结构程序阅读能力。n3,外循环变量i从1变到3,控制输出行数为3,内循环变量j从1变到i,控制输出列数为i列,即第一行为1列,第二行为2列,第三行为3列,故选项A正确。

27、答案A8有如下VB程序段:Dim i As Integer,c As String,s As String,t As Strings“2012 Hero”:t“”For i1 To Len(s)cMid(s,i,1)If c“a” And c“z” Then ttcNext iText1.Textt该程序段运行后,文本框Text1中显示的内容是()A2012 BHero Cero D2012 H解析该程序的功能是取出字符串s中的小写字母。答案C9下面VB程序的功能是判断一个整数是否为素数。在文本框Text1中输入一个整数x,如果x是素数,则在标签Label1中显示“Y”,否则显示“N”。程序中

28、有两处错误,请改正。Private Sub Command1_Click( )Dim i As Integer,x As Integer,pd As BooleanVal(Text1.Text)xpdTruei1Do While ix And pdTrueIf x Mod i0 ThenpdFalseElseii1End IfLoopIf pdTrue ThenLabel1.Caption“Y”ElseLabel1.Caption“N”End IfEnd Sub错误语句1:_改为:_;错误语句2:_改为:_。解析变量x的值由文本框Text1中输入得到,因此为xVal(Text1.Text);除

29、数应从2开始。答案Val(Text1.Text)xxVal(Text1.Text)i1i210(20143月浙江学考)下列VB程序段用于比较两个等长的字符串a和b,并在标签Label1中显示比较结果:如果a和b完全相同,则输出“完全相同”,否则在输出结果中指出第1个不相同字符的位置。k0整数型变量k用于记录第1个不相同字符的位置For i1 To Len(a)字符串变量a用于存储第1个字符串keyMid(a,i,1)If keyMid(b,i,1)Then字符串变量b用于存储第2个字符串Exit ForEnd IfNext iIf k0 ThenLabel1.Caption“完全相同”Else

30、Label1.Caption“第”Str(k)“个字符不相同”End If方框中的正确语句是()Aki Bk0 Ck1 Dklen(a)解析当程序循环到第i次时,如果发现有不相同字符,则用k记录下当前这个位置,这时k的值已经由最初的0变为当前的i。答案A11(2010浙江会考改编)下列VB程序实现如下功能:程序运行时,在文本框Text1和Text2中分别输入x和n的值,单击命令按钮Command1后,调用函数f计算sx的值,并在文本框Text3中显示计算结果。请在划线上填入合适的代码。Private Sub Command1_Click( )Dim x As Single,n As Integ

31、er,s As _xVal(Text1.Text)nVal(Text2.Text)sf(x,n)Text3.Textstr(s)End SubPrivate Function f(x As Single,n As Integer) As SingleDim sum As Single,i As Integer,t As Singlesum 0t1For i1 To ntt*x/isumsumtNext i_End Function填写划线处代码_。填写划线处代码_。解析本题注意变量的类型。答案Singlefsum12(20159月浙江选考模拟)用VB编写一个字符串分行程序,功能如下:单击“分行

32、”按钮Command1,将文本框Text1中的英文文本在列表框List1中分行显示(分行时单词不得跨行,每行字符尽可能多但不超过40个),并在标签Label1中输出总行数,运行效果如图所示。分行算法如下:(1)将文本框中的字符串保存到变量s中;(2)当s中字符个数超过40时,循环执行下列步,否则跳转到(3):如果第41个字符不是英文字母,则分行位置p40;否则,向左逐个查找,直至找到第一个非英文字母,将其位置作为分行位置p;截取s的前p个字符,作为新增行显示在列表框List1中,同时总行数加1;将s中未分行部分重新赋值给变量s。(3)将s作为新增行显示在列表框List1中,同时总行数加1。实现

33、上述功能的VB程序如下,请在画线处填入合适代码。Private Sub Command1_Click( )Dim s As String,c As StringDim r As Integer,total As Integer,p As Integertotal0s_(1)_Do While Len(s)40r41cMid(s,r,1)If Not(c“a” And c“z”)Or(c“A” And c“Z”) Thenp40Else从第41个字符开始向左找到第1个非英文字母,并将其位置值赋给pDo While(c“a” And c“z”)Or(c“A”And c“Z”)r_(2)_cMid(

34、s,r,1)LoopprEnd IfList1.AddItem Mid(s,1,p)totaltotal1s_(3)_LoopList1.AddItem stotaltotal 1Label1.Caption“共”Str(total)“行”End Sub解析本题考查文本框对象和属性的赋值、倒计时计数器的变通应用及取子串函数的应用。(1)题和图中已知对象Text1接受字符串赋值给s,即sText1.Text。(2)r变量在语句cMid(s,r,1)中表示取子串的起始位置取一个字符,为判断从第41个字符开始向左找到第1个非英文字母,并将其位置赋给p。(3)上题中已把前面子串输出到列表框List1中,需要把剩余的子串保留下来,重新赋值给新的变量s,为下一行再取子串做准备。答案(1)Text1.Text(2)r1(3)Mid(s,p1,Len(s)p)ks5u或Mid(s,p1)或Right(s,Len(s)p)版权所有:高考资源网()

网站客服QQ:123456
免费在线备课命题出卷组卷网版权所有
经营许可证编号:京ICP备12026657号-3