欢迎来到麦多课文档分享! | 帮助中心 海量文档,免费浏览,给你所需,享你所想!
麦多课文档分享
全部分类
  • 标准规范>
  • 教学课件>
  • 考试资料>
  • 办公文档>
  • 学术论文>
  • 行业资料>
  • 易语言源码>
  • ImageVerifierCode 换一换
    首页 麦多课文档分享 > 资源分类 > DOC文档下载
    分享到微信 分享到微博 分享到QQ空间

    【计算机类职业资格】二级VISUAL+BASIC-103及答案解析.doc

    • 资源ID:1327329       资源大小:99.50KB        全文页数:29页
    • 资源格式: DOC        下载积分:5000积分
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    二维码
    微信扫一扫登录
    下载资源需要5000积分(如需开发票,请勿充值!)
    邮箱/手机:
    温馨提示:
    如需开发票,请勿充值!快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如需开发票,请勿充值!如填写123,账号就是123,密码也是123。
    支付方式: 支付宝扫码支付    微信扫码支付   
    验证码:   换一换

    加入VIP,交流精品资源
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    【计算机类职业资格】二级VISUAL+BASIC-103及答案解析.doc

    1、二级 VISUAL+BASIC-103及答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:43,分数:100.00)1.为计算 a n 的值,某人编写了函数 power如下: Private Function power(a As Integer,n As Integer)As Long Dim s As Long p=a For k=1 To n p=p*a Next k power=p End Function 在调试时发现是错误的,例如 Print power(5,4)的输出应该是 625,但实际输出是 3125。程序需要修改。下面的修改方案中有 3个是正确的,错误

    2、的一个是_。(分数:1.00)A.把 For k=1 To n改为 For k=2 To nB.把 p=p*a改为 p=pnC.把 For k=1 To n改为 For k=1 To n-1D.把 p=a改为 p=12.在窗体上画一个名称为 Text1的文本框和一个名称为 Command1的命令按钮,然后编写如下事件过程: Private Sub Command1_Click() Dim i As Integer,n As Integer For i=0 To 50 i=i+3 n=n+1 If i10 Then Exit For Next Text1.Text=Str(n) End Sub

    3、程序运行后,单击命令按钮,在文本框中显示的值是_。(分数:1.50)A.2B.3C.4D.53.有如下程序: Private Sub Form_Click() Dim s As Integer,p As Integer p=1 For i=1 To 4 For j=1 To i S=s+j Next j p=p*s Next i Print p End Sub 程序运行后,单击窗体,则输出结果是_。(分数:1.50)A.90B.180C.400D.8004.假定有以下程序段: For i=1 To 3 For j=5 To 1 Step-1 Print i*j Next j Next i 则语

    4、句 Print i*j的执行次数是_。(分数:1.50)A.15B.16C.17D.185.为计算 1+2+2 2 +2 3 +2 4 +2 10 的值,并把结果显示在文本框 Text1中,若编写如下事件过程: Private Sub Command1 Click() Dim a Select Case Num Case 12 Exit For Case 58 Exit Do Case 65,68,92 End End Select Next I Loop End Sub 上述事件过程执行后,下列描述中正确的是_。(分数:2.50)A.Do循环执行的次数为 1000次B.在 For循环中产生的

    5、随机数小于或等于 100C.当所产生的随机数为 12时结束所有循环D.当所产生的随机数为 65、68 或 92时窗体关闭,程序结束11.在窗体上画两个文本框(名称分别为 Text1和 Text2)和一个命令按钮(名称为 Command1),然后编写如下事件过程: Private Sub Command1_Click() x=0 Do Wbile x50 x=(x+2)*(x+3) n=n+1 Loop Text1.Text=Str(n) Text2.Text=Str(x) End Sub 程序运行后,单击命令按钮,在两个文本框中显示的值分别为_。(分数:2.50)A.1和 0B.2和 72C.

    6、3和 50D.4和 16812.有如下程序: Private Sub Command1_Click() Dim i As Integer,j As Integer Dim sum As Integer n=1 Do j=1 Do sum=sum+j j=j+1 Print j; Loop Until j3 n=n+2 Loop Until n10 Print sum End Sub 运行上述程序,外层 Do循环执行的次数为_。(分数:2.50)A.4B.5C.7D.1013.编写如下程序: Private Sub Command1_Click() Dim m As Integer,n As I

    7、nteger m=1:n=0 Do While m20 n=m+n m=3*m+1 Loop Print m,n End Sub 程序运行后,单击命令按钮 Command1,输出结果为_。(分数:2.50)A.40 18B.40 19C.20 64D.21 6414.下列循环中,可以正常结束的是_。(分数:2.50)A.i=10Doi=i+1Loop Until i1B.i=1Doi=i+1Loop Until i=10C.i=10Doi=i+1Loop While i1D.i=10Doi=i-2Loop Until i=115.设有如下事件过程: Private Sub Command1_C

    8、lick() For i=1 To 5 j=i Do Print “*“ j=j-1 Loop Until j=0 Next i End Sub 运行程序,输出“*”的个数是_。(分数:2.50)A.5B.15C.20D.2516.已知在 4行 3列的全局数组 score(4,3)中存放了 4个学生 3门课程的考试成绩(均为整数)。现需要计算每个学生的总分,某人编写程序如下: Option Base 1 Private Sub Command1_Click() Dim sum As Integer sum=0 For i=1 To 4 For j=1 To 3 sum=sum+score(i,

    9、j) Next j Print “第“ sum Next i End Sub 运行此程序时发现,除第 1个人的总分计算正确外,其他人的总分都是错误的,程序需要修改。以下修改方案中正确的是_。(分数:2.50)A.把外层循环语句 For i=1 To 4改为 For i=1 To 3内层循环语句 For j=1 To 3改为 For j=1 To 4B.把 sum=0移到 For i=1 To 4和 For j=1 To 3之间C.把 sum=sum+score(i,j)改为 sum=sum+score(j,i)D.把 sum=sum+score(i,j)改为 sum=score(i,j)17.

    10、在窗体上画一个命令按钮和一个标签,其名称分别为 Command1和 Label1,然后编写如下事件过程: Private Sub Command1_Click() Counter=0 For i=1 To 4 For j=6 To 1 Step-2 Counter=Counter+1 Next j Next i Label1.Caption=Str(Counter) End Sub 程序运行后,单击命令按钮,标签中显示的内容是_。(分数:2.50)A.11B.12C.16D.2018.设有如下的程序段: n=0 For i=1 To 3 For j=1 To i For k=j To 3 n=

    11、n+1 Next k Next j Next i 执行上面的程序段后,n 的值为_。(分数:2.50)A.3B.21C.9D.1419.窗体上有一个名称为 Command1的命令按钮,并有如下程序代码: Option Base 1 Private Sub Command1_Click() Dim a%(3,3) For i=1 To 3 For j=1 To 3 If i1 And j1 Then a(i,j)=a(a(i-1,j-1),a(i,j-1)+1 Else a(i,j)=i*j End If Next Next Print a(2,2);a(3,3) End Sub 运行程序,单击

    12、命令按钮,窗体上显示的是_。(分数:2.50)A.1 3B.2 1C.2 2D.3 320.语句 Dim a(-3 To 4,3 To 6)As Integer 定义的数组的元素个数是_。(分数:2.50)A.18B.28C.21D.3221.窗体上有 Command1、Command2 两个命令按钮。现编写以下程序: Option Base 0 Dim a()As Integer,m As Integer Private Sub Command1_Click() m=InputBox(“请输入一个正整数“) ReDim a(m) End Sub Private Sub Command2_Cl

    13、ick() m=InputBox(“请输入一个正整数“) ReDim a(m) End Sub 运行程序时,单击 Command1后输入整数 10,再单击 Command2后输入整数 5,则数组 a中元素的个数是_。(分数:2.50)A.5B.6C.10D.1122.以下关于数组的叙述中,错误的是_。(分数:2.50)A.Variant类型的数组中各数组元素的类型可以不同B.各数组元素可以是不同类型的控件C.各数组元素通过下标进行区别D.各数组元素具有相同的名称23.设有如下声明语句 Option Base 1 Dim air(2,-1 To 5)As Integer 则数组 art中数组元素

    14、的个数是_。(分数:2.50)A.10B.12C.14D.2124.窗体上有名称为 Command1的命令按钮,其事件过程如下: Option Base I Private Sub Command1_Click() Dim a Dim b(10)As Integer a=Array(2,4,7,3,9,6) For i=LBound(a) To UBound(a) b(i)=a(i)+i Sum=Sum+b(i) Next i Print Sum End Sub 运行程序,单击命令按钮时,窗体上显示的是_。(分数:2.50)A.44B.46C.50D.5225.以下数组定义语句中,错误的是_。

    15、(分数:2.50)A.Static a(10)As IntegerB.Dim c(3,1 To 4)C.Dim d(-10)D.Dim b(0 To 5,1 To 3)As Integer26.以下叙述中错误的是_。(分数:2.50)A.用 ReDim语句可以改变数组的维数B.用 ReDim语句可以改变数组的类型C.用 ReDim语句可以改变数组每一维的大小D.用 ReDim语句可以对数组中的所有元素置 0或空字符串27.设有下面的程序段: x=InputBox(“请输入一个整数“) ReDim a(x) For k=x To 0 Step-1 a(k)=k Next k 一般,在这段程序之前

    16、应先进行数组 a的定义。下面定义语句中正确的是_。(分数:2.50)A.Dim a(100)As IntegerB.Dim a()As IntegerC.Dim a As IntegerD.Dim a(0 To 100)As Integer28.下面正确使用动态数组的是_。(分数:2.50)A.Dim arr()As integerReDim arr(3,5)B.Dim arr()As integerReDim arr(50)As stringC.Dim arr()ReDim arr(3,5)D.Dim arr(50)As integerReDim arr(20)29.在程序中要使用 Arra

    17、y函数给数组 arr赋初值,则以下数组变量定义语句中错误的是_。(分数:2.50)A.Static arrB.Dim arr(5)C.Dim arr()D.Dim arr As Variant30.在窗体上画一个命令按钮(其 Name属性为 Command1),然后编写如下代码: Private Sub Command1_Click() Dim n()As Integer Dim a,b As Integer a=InputBox(“Enter the first number“) b=InputBox(“Enter the seeond number“) ReDim n(a To b) Fo

    18、r k=LBound(n)To UBound(n) n(k)=k Print n(k); Next k End Sub 程序运行后,单击命令按钮,在输入对话框中分别输入 2和 3,输出结果为_。(分数:2.50)A.1 2B.2 3C.3 4D.4 531.设有如下程序: Option Base 1 Dim a(3,4)As Integer,b(4,3)As Integer Private Sub Command1_Click() 循环 1 For i=1 To 3 For j=1 To 4 b(j,i)=a(i,j) Next j Next i 循环 2 x=b(1,1) For i=1 T

    19、o 4 For j=1 To 3 Print b(i,j); If xb(i,j)Then x=b(i,j) Next j Print Next i End Sub 程序中的数组 a已被赋值。以下关于上述程序的叙述中,正确的是_。(分数:2.50)A.窗体模块中,不能使用 Dim声明 a、b 数组B.“循环 1”可以正常运行C.“循环 2”中循环变量 i、j 的终值不对,所以不能正常运行D.程序可以正常运行,x 中保存的是数组 b中所有元素中最小的数32.命令按钮 Command1的单击事件过程如下: Private Sub Command1_Click() Dim a(10,10)As In

    20、teger x=0 For i=1 To 3 For j=1 To 3 a(i,j)=i*2 Mod j If xa(i,j)Then x=a(i,j) Next Next Print x End Sub 执行上述事件过程后,窗体上显示的是_。(分数:2.50)A.1B.2C.3D.433.若窗体上有一个名为 Command1的命令按钮,并有下面的程序: Private Sub Command1_Click() Dim arr(5)As Integer For k=1 To 5 arr(k)=k Next k prog arr() For k=1 To 5 Print arr(k); Next

    21、 k End Sub Sub prog(a()As Integer) n=UBound(a) For i=n To 2 step-1 For j=1 To n-1 if a(j)a(j+1)Then t=a(j):a(j)=a(j+1):a(j+1)=t End If Next j Next i End Sub 程序运行时,单击命令按钮后显示的是_。(分数:2.50)A.1 2 3 4 5B.5 4 3 2 1C.0 1 2 3 4D.4 3 2 1 034.在窗体上面一个名称为 Command1的命令按钮,并编写如下程序: Option Base 1 Private Sub Command1

    22、_Click() Dim a(4,4) For i=1 To 4 For j=1 To 4 a(i,j)=(i-1)*3+j Next j Next j For i=3 To 4 For j=3 To 4 Print a(j,i); Next j Print Ncxt i End Sub 运行程序,单击命令按钮,则输出结果为_。(分数:2.50)A.6 97 10B.7 108 11C.8 119 12D.9 1210 1335.编写如下程序: Private Sub Command1_Click() Dim a(3,3)As Integer Dim s As Integer For i=1

    23、To 3 For j=1 To 3 a(i,j)=i*j+i Next j Next j s=0 For i=1 To 3 s=s+a(i,4-i) Next i Print s End Sub 程序运行后,单击命令按钮 Command1,输出结果为_。(分数:2.50)A.7B.13C.16D.2036.在窗体上画一个名为 Command1的命令按钮,然后编写如下代码: Option Base 1 Private Sub Command1_Click() Dim a a=Array(1,2,3,4) j=1 For i=4 To 1 Step-1 s=s+a(i)*j j=j*10 Next

    24、 i Print s End Sub 运行上面的程序,其输出结果是_。(分数:2.50)A.1234B.12C.34D.432137.窗体上有单选钮和列表框控件。单击名称为 Option1、标题为“国家”的单选钮,向列表框中添加国家名称,如下图所示。 (分数:2.50)A.程序有错,没有声明数组的维数及上下界B.只有一维数组才能使用 Array为数组赋初值C.For循环的终值应为 ListCount-1D.For循环的初值应为 138.在窗体上画一个名称为 Text1的文本框,并编写如下程序: Option Base 1 Private Sub Form_Click() Dim arr Dim

    25、 Start As Integer, Finish As Integer Dim Sum As Integer arr=Array(12,4,8,16) Start=LBound(arr) Finish=UBound(arr) Sum=0 For i=Start To Finish Sum=Sum+arr(i) Next i C=Sum/Finish Text1.Text=c End Sub 运行程序,单击窗体,则在文本框中显示的是_。(分数:2.50)A.40B.10C.12D.1639.窗体上的三个命令按钮构成名称为 Command1的控件数组。如下图所示。 (分数:2.50)A.Prin

    26、t Command1(2).Caption语句有错B.在窗体上显示“命令按钮 2”C.在窗体上显示“命令按钮 3”D.在窗体上显示“计算机等级考试”40.假定通过复制、粘贴操作建立了一个命令按钮数组 Cornmand1,以下说法中错误的是_。(分数:2.50)A.数组中每个命令按钮的名称(Name 属性)均为 Command1B.若未做修改,数组中每个命令按钮的大小都一样C.数组中各个命令按钮使用同一个 Click事件过程D.数组中每个命令按钮的 Index属性值都相同41.窗体上有一个名称为 Option1的单选按钮数组,程序运行时,当单击某个单选按钮时,会调用下面的事件过程: Privat

    27、e Salt Option1_Click(Index As Integer) End Sub 下面关于此过程的参数 Index的叙述中正确的是_。(分数:2.50)A.Index为 1表示单选按钮被选中,为 0表示未选中B.Index的值可正可负C.Index的值用来区分哪个单选按钮被选中D.Index表示数组中单选按钮的数量42.窗体上有一个由两个文本框组成的控件数组,名称为 Text1,并有如下事件过程: Private Sub Text1_Change(Index As Integer) Select Case Index Case 0 Text1(1).FontSize=Text1(0

    28、).FontSize*2 Text1(1).Text=Text1(0).Text Case 1 Text1(0).FontSize=Text1(1).FontSize/2 Text1(0).Text=Text1(1).Text Case Else MsgBox “执行 Else分支“ End Select End Sub 关于上述程序,以下叙述中错误的是_。(分数:2.50)A.Index用于标识数组元素B.本程序中 Case Else分支的语句永远不会被执行C.向任何一个文本框输入字符,都会在另一个文本框中显示该字符D.下标为 0的文本框中显示的字符尺寸将越来越小43.以下关于控件数组的叙述

    29、中,正确的是_。(分数:2.50)A.数组中各个控件具有相同的名称B.数组中可包含不同类型的控件C.数组中各个控件具有相同的 Index属性值D.数组元素不同,可以响应的事件也不同二级 VISUAL+BASIC-103答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:43,分数:100.00)1.为计算 a n 的值,某人编写了函数 power如下: Private Function power(a As Integer,n As Integer)As Long Dim s As Long p=a For k=1 To n p=p*a Next k power=p End

    30、 Function 在调试时发现是错误的,例如 Print power(5,4)的输出应该是 625,但实际输出是 3125。程序需要修改。下面的修改方案中有 3个是正确的,错误的一个是_。(分数:1.00)A.把 For k=1 To n改为 For k=2 To nB.把 p=p*a改为 p=pn C.把 For k=1 To n改为 For k=1 To n-1D.把 p=a改为 p=1解析:解析 程序中计算 a n 的算法有误,由于已经将 a的值赋给了 p,在后边的 For循环中再乘 n次a显然就多乘了一次 a,因此,要改正此程序或者将 p=a改为 p=1,或者将 Fork=1 to

    31、11改成 For k=1 to n-1或 For k=2 to n。而 B选项将 p=p*a改为 p=pn将会导致 p=pn执行 n次,得不到正确结果。2.在窗体上画一个名称为 Text1的文本框和一个名称为 Command1的命令按钮,然后编写如下事件过程: Private Sub Command1_Click() Dim i As Integer,n As Integer For i=0 To 50 i=i+3 n=n+1 If i10 Then Exit For Next Text1.Text=Str(n) End Sub 程序运行后,单击命令按钮,在文本框中显示的值是_。(分数:1.5

    32、0)A.2B.3 C.4D.5解析:解析 程序中 For循环的结束有两种情况,一种是循环完指定的次数,一种是达到一定的条件后直接退出循环。由于在循环体中循环变量 i的值被修改:i=i+3,因此,每次循环开始时 i的取值为0、4、8,i 为 8时执行 i=i+3=11,n=n+1=3,这时 i的值大于 10,退出 For循环,因此 For循环执行了3次,即 n的值为 3。所以在文本框中会显示 3。3.有如下程序: Private Sub Form_Click() Dim s As Integer,p As Integer p=1 For i=1 To 4 For j=1 To i S=s+j N

    33、ext j p=p*s Next i Print p End Sub 程序运行后,单击窗体,则输出结果是_。(分数:1.50)A.90B.180C.400D.800 解析:解析 程序是一个双层 For循环,外层循环变量的值决定内层 For循环的次数。 当 i=1时,内层循环 1次,s=1,p=1; 当 i=2时,内层循环 2次,s=1+1+2=4,p=1*4=4; 当 i=3时,内层循环 3次,s=4+1+2+3=10,p=4*10=40; 当 i=4时,内层循环 4次,s=10+1+2+3+4=20,p=40*20=800。4.假定有以下程序段: For i=1 To 3 For j=5 T

    34、o 1 Step-1 Print i*j Next j Next i 则语句 Print i*j的执行次数是_。(分数:1.50)A.15 B.16C.17D.18解析:解析 外层 For循环从 1到 3是 3次,内层循环从 5到 1,是 5次。因此循环体执行的次数是3*5=15次。5.为计算 1+2+2 2 +2 3 +2 4 +2 10 的值,并把结果显示在文本框 Text1中,若编写如下事件过程: Private Sub Command1 Click() Dim a Select Case Num Case 12 Exit For Case 58 Exit Do Case 65,68,9

    35、2 End End Select Next I Loop End Sub 上述事件过程执行后,下列描述中正确的是_。(分数:2.50)A.Do循环执行的次数为 1000次B.在 For循环中产生的随机数小于或等于 100C.当所产生的随机数为 12时结束所有循环D.当所产生的随机数为 65、68 或 92时窗体关闭,程序结束 解析:解析 程序 Do循环中嵌套了 For循环,Do 循环没有设置结束条件,而是在 For循环体中的Select语句中设置了退出 Do循环和 For循环及结束程序的分支,因此 Do循环的次数无法确定。随机函数 Rnd产生0,1)之间的一个数,包括 0但不包含 1,因此 R

    36、nd*100的范围是大于等于 0小于 100。随机数为 65、68 或 92时结束程序,关闭窗体,为 58时退出 Do循环,为 12时退出 For循环进入下一次 Do循环。11.在窗体上画两个文本框(名称分别为 Text1和 Text2)和一个命令按钮(名称为 Command1),然后编写如下事件过程: Private Sub Command1_Click() x=0 Do Wbile x50 x=(x+2)*(x+3) n=n+1 Loop Text1.Text=Str(n) Text2.Text=Str(x) End Sub 程序运行后,单击命令按钮,在两个文本框中显示的值分别为_。(分数

    37、:2.50)A.1和 0B.2和 72 C.3和 50D.4和 168解析:解析 在文本框中显示的值即 n,x 的值。x 初始值已设为 0,n 的初值没有定义,默认为 0。各次循环 x,n 的值如下: x=(x+2)*(x+3)=(0+2)*(0+3)=2*3=6,n=n+1=0+1=1 x=6,满足 x50,循环继续: x=(x+2)*(x+3)=(6+2)*(6+3)=8*9=72,n=n+1=1+1=2 x=72,不满足 x50,循环结束。此时 n的值为 2,x 的值为 72。12.有如下程序: Private Sub Command1_Click() Dim i As Integer,

    38、j As Integer Dim sum As Integer n=1 Do j=1 Do sum=sum+j j=j+1 Print j; Loop Until j3 n=n+2 Loop Until n10 Print sum End Sub 运行上述程序,外层 Do循环执行的次数为_。(分数:2.50)A.4B.5 C.7D.10解析:解析 外层 Do循环结束条件是 n10,n 初值为 1,每次加 2,循环体中每次循环 n的值为3、5、7、9、11,值变化 5次,因此外层 Do循环执行次数为 5次。13.编写如下程序: Private Sub Command1_Click() Dim m

    39、 As Integer,n As Integer m=1:n=0 Do While m20 n=m+n m=3*m+1 Loop Print m,n End Sub 程序运行后,单击命令按钮 Command1,输出结果为_。(分数:2.50)A.40 18 B.40 19C.20 64D.21 64解析:解析 循环中各变量值变化如下: n=m+n=1+0=1,m=3*m+1=3+1=4,4 小于 20继续循环; n=m+n=4+1=5,m=3*m+1=12+1=13,13,13 小于 20继续循环; n=m+n=13+5=18,m=3*m+1=39+1=40,40 不小于 20,循环结束。此时

    40、 m=40,n=18。14.下列循环中,可以正常结束的是_。(分数:2.50)A.i=10Doi=i+1Loop Until i1B.i=1Doi=i+1Loop Until i=10 C.i=10Doi=i+1Loop While i1D.i=10Doi=i-2Loop Until i=1解析:解析 选项 A中先执行一次循环体,i 的值变成 1,测试循环结束条件,i1 不成立,循环继续,i值总是增加,达不到循环结束条件,不能正常结束。选项 B先执行循环体,i 值加 1变成 2,再测试循环结束条件 i=10,继续循环,i 值再加 1,直到 i变为 10,循环结束。选项 C中 i初值为 10,先

    41、执行一次循环体,使 i加 1,然后判断继续循环的条件 i1 是否成立,此后 i值不会小于等于 1,循环会一直继续下去,不会正常结束。选项 D中 i初值为 10,每次循环 i值减 2,因此它总是偶数,而循环结束的条件是 i=1,不可能达到,循环会一直继续下去。15.设有如下事件过程: Private Sub Command1_Click() For i=1 To 5 j=i Do Print “*“ j=j-1 Loop Until j=0 Next i End Sub 运行程序,输出“*”的个数是_。(分数:2.50)A.5B.15 C.20D.25解析:解析 i=1 时,输出 1个“*”,i

    42、=2 时,输出 2个“*”,i=3 时,输出 3个“*”,i=4 时输出 4个“*”,i=5 时输出 5个“*”,因此总共输出“*”的个数是 1+2+3+4+5=15。16.已知在 4行 3列的全局数组 score(4,3)中存放了 4个学生 3门课程的考试成绩(均为整数)。现需要计算每个学生的总分,某人编写程序如下: Option Base 1 Private Sub Command1_Click() Dim sum As Integer sum=0 For i=1 To 4 For j=1 To 3 sum=sum+score(i,j) Next j Print “第“ sum Next

    43、i End Sub 运行此程序时发现,除第 1个人的总分计算正确外,其他人的总分都是错误的,程序需要修改。以下修改方案中正确的是_。(分数:2.50)A.把外层循环语句 For i=1 To 4改为 For i=1 To 3内层循环语句 For j=1 To 3改为 For j=1 To 4B.把 sum=0移到 For i=1 To 4和 For j=1 To 3之间 C.把 sum=sum+score(i,j)改为 sum=sum+score(j,i)D.把 sum=sum+score(i,j)改为 sum=score(i,j)解析:解析 程序变量 sum的值在开始计算第 2个学生的总成绩

    44、时,仍保留着第一个学生的总成绩,这样会把前面学生的总成绩计算进去,显然不对。因此,sum=0 这一句应该放在第 1层 For循环体的第一句,即 For i=1 to 4和 for i=1 to3之间。17.在窗体上画一个命令按钮和一个标签,其名称分别为 Command1和 Label1,然后编写如下事件过程: Private Sub Command1_Click() Counter=0 For i=1 To 4 For j=6 To 1 Step-2 Counter=Counter+1 Next j Next i Label1.Caption=Str(Counter) End Sub 程序运行

    45、后,单击命令按钮,标签中显示的内容是_。(分数:2.50)A.11B.12 C.16D.20解析:解析 这是一个双层循环,外层循环是 4次,内层循环变量最初值 6,终值 1,步长-2,则 j可取的值为 6、4、2,因此内层 For循环会循环 3次,两层循环的总数是 4*3=12次,Counter 的值即为12。Str 函数将数值转换成字符串,即“12”,所以标签中显示的内容为“12”。18.设有如下的程序段: n=0 For i=1 To 3 For j=1 To i For k=j To 3 n=n+1 Next k Next j Next i 执行上面的程序段后,n 的值为_。(分数:2.

    46、50)A.3B.21C.9D.14 解析:解析 程序是三层的 For循环,内层的循环次数由外一层的循环变量的值决定。因此程序执行过程如下: i=1时,第二层循环执行 1次,第三层循环执行 3次,n=3 i=2时,第二层循环执行 2次,第三层循环执行 3次+2 次,n=3+3+2=8 i=3时,第二层循环执行 3次,第三层循环执行 3次+2 次+1 次,n=8+3+2+1=14 因此答案为 D。19.窗体上有一个名称为 Command1的命令按钮,并有如下程序代码: Option Base 1 Private Sub Command1_Click() Dim a%(3,3) For i=1 To

    47、 3 For j=1 To 3 If i1 And j1 Then a(i,j)=a(a(i-1,j-1),a(i,j-1)+1 Else a(i,j)=i*j End If Next Next Print a(2,2);a(3,3) End Sub 运行程序,单击命令按钮,窗体上显示的是_。(分数:2.50)A.1 3B.2 1C.2 2D.3 3 解析:解析 a 是个整型的二维数组。通过 For循环给数组 a元素赋值。i1 并且 j1 时执行 a(i,j)=a(a(i-1,j-1),a(i,j-1)+1 语句,否则执行 a(i,j)=i*j,因此执行完第一个大循环后,数组 a中的元素值分别

    48、是:a(1,1)=1,a(1,2)=2,a(1,3)=3。以此类推,可知 a(2,2)=2,a(3,3)=3。选 D。20.语句 Dim a(-3 To 4,3 To 6)As Integer 定义的数组的元素个数是_。(分数:2.50)A.18B.28C.21D.32 解析:解析 本题定义的是一个整型的二维数组,-3To 4 指的是-3、-2、-1、0、1、2、3、4(共 8行),3 To 6指的是 3、4、5、6(共 4列),因此数组元素个数是 84=32,故选 D。21.窗体上有 Command1、Command2 两个命令按钮。现编写以下程序: Option Base 0 Dim a()As Integer,m As Integer Private Sub Command1_Click() m=InputBox(“请输入一个正整数“) ReDim a(m) End Sub Private Sub Command2_Click() m=InputBox(“请输入一个正整数“) ReDim a(m) End Sub 运行程序时,单击 Command1后输入整数 10,再单击 Command2后输入整数 5,则数组 a中元素的个数是_。(分数:2.50)A.5B.6 C.10


    注意事项

    本文(【计算机类职业资格】二级VISUAL+BASIC-103及答案解析.doc)为本站会员(tireattitude366)主动上传,麦多课文档分享仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知麦多课文档分享(点击联系客服),我们立即给予删除!




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
    备案/许可证编号:苏ICP备17064731号-1 

    收起
    展开