二级VISUAL+BASIC真题.docx

上传人:b****8 文档编号:9949796 上传时间:2023-02-07 格式:DOCX 页数:25 大小:125.41KB
下载 相关 举报
二级VISUAL+BASIC真题.docx_第1页
第1页 / 共25页
二级VISUAL+BASIC真题.docx_第2页
第2页 / 共25页
二级VISUAL+BASIC真题.docx_第3页
第3页 / 共25页
二级VISUAL+BASIC真题.docx_第4页
第4页 / 共25页
二级VISUAL+BASIC真题.docx_第5页
第5页 / 共25页
点击查看更多>>
下载资源
资源描述

二级VISUAL+BASIC真题.docx

《二级VISUAL+BASIC真题.docx》由会员分享,可在线阅读,更多相关《二级VISUAL+BASIC真题.docx(25页珍藏版)》请在冰豆网上搜索。

二级VISUAL+BASIC真题.docx

二级VISUAL+BASIC真题

2010年3月全国计算机等级考试二级笔试试卷

VisualBasic语言程序设计

一、选择题

下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的。

(1)下列叙述中正确的是

A)对长度为n的有序链表进行查找,最坏情况下需要的比较次数为n

B)对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数为(n/2)

C)对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数为(log2n)

D)对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数为(nlog2n)

(2)算法的时间复杂度是指

A)算法的执行时间B)算法所处理的数据量

C)算法程序中的语句或指令条数D)算法在执行过程中所需要的基本运算次数

(3)软件按功能可以分为:

应用软件、系统软件和支撑软件(或工具软件)。

下面属于系统软件的是

A)编辑软件B)操作系统C)教务管理系统D)浏览器

(4)软件(程序)调试的任务是

A)诊断和改正程序中的错误B)尽可能多地发现程序中的错误

C)发现并改正程序中的所有错误D)确定程序中错误的性质

(5)数据流程图(DFD图)是

A)软件概要设计的工具B)软件详细设计的工具

C)结构化方法的需求分析工具D)面向对象方法的需求分析工具

(6)软件生命周期可分为定义阶段,开发阶段和维护阶段。

详细设计属于

A)定义阶段B)开发阶段C)维护阶段D)上述三个阶段

(7)数据库管理系统中负责数据模式定义的语言是

A)数据定义语言B)数据管理语言C)数据操纵语言D)数据控制语言

(8)在学生管理的关系数据库中,存取一个学生信息的数据单位是

A)文件B)数据库C)字段D)记录

(9)数据库设计中,用E-R图来描述信息结构但不涉及信息在计算机中的表示,它属于数据库设计的

A)需求分析阶段B)逻辑设计阶段C)概念设计阶段D)物理设计阶段

(10)有两个关系R和T如下:

   R

A

B

C

a

1

2

b

2

2

c

3

2

d

3

2

        T

A

B

C

c

3

2

d

3

2

则由关系R得到关系T的操作是

A)选择B)投影C)交D)并

(11)在VB集成环境中要结束一个正在运行的工程,可单击工具栏上的一个按钮,这个按钮是

(12)设x是整型变量,与函数IIf(x>0,-x,x)有相同结果的代数式是

A)|x|B)-|x|C)xD)-x

(13)设窗体文件中有下面的事件过程:

PrivateSubCommand1_Click()

Dims

a%=100

Printa

EndSub

其中变量a和s的数据类型分别是

A)整型,整型B)变体型,变体型

C)整型,变体型D)变体型,整型

(14)下面哪个属性肯定不是框架控件的属性

A)TextB)Caption

C)LeftD)Enabled

(15)下面不能在信息框中输出“VB”的是

A)MsgBox"VB"B)x=MsgBox("VB")

C)MsgBox("VB")D)CallMsgBox"VB"

(16)窗体上有一个名称为Option1的单选按钮数组,程序运行时,当单击某个单选按钮时,会调用下面的事件过程

PrivateSuboption1_Click(IndexAsInteger)

EndSub

下面关于此过程的参数Index的叙述中正确的是

A)Index为1表示单选按钮被选中,为0表示未选中

B)Index的值可正可负

C)Index的值用来区分哪个单选按钮被选中

D)Index表示数组中单选按钮的数量

(17)设窗体中有一个文本框Text1,若在程序中执行了Text1.SetFocus,则触发

A)Text1的SetFocus事件B)Text1的GotFocus事件

C)Text1的LostFocus事件D)窗体的GotFocus事件

(18)VB中有3个键盘事件:

KeyPress、KeyDown、KeyUp,若光标在Text1文本框中,则每输入一个字母

A)这3个事件都会触发B)只触发KeyPress事件

C)只触发KeyDown、KeyUp事件D)不触发其中任何一个事件

(19)下面关于标准模块的叙述中错误的是

A)标准模块中可以声明全局变量

B)标准模块中可以包含一个SubMain过程,但此过程不能被设置为启动过程

C)标准模块中可以包含一些Public过程

D)一个工程中可以含有多个标准模块

(20)设窗体的名称为Form1,标题为Win,则窗体的MouseDown事件过程的过程名是

A)Form1MouseDownB)Win_MouseDown

C)Form_MouseDownD)MouseDown_Form1

(21)下面正确使用动态数组的是

A)Dimart()AsIntegerB)Dimarr()AsInteger

……

ReDimarr(3,5)ReDimarr(50)AsString

C)Dimarr()D)Dimarr(50)AsInteger

……

ReDimarr(50)AsIntegerReDimarr(20)

(22)下面是求最大公约数的函数的首部

Functiongcd(ByValxAsInteger,ByValyAsInteger)AsInteger

若要输出8、12、16这3个数的最大公约数,下面正确的语句是

A)Printgcd(8,12),gcd(12,16),gcd(16,8)

B)Printgcd(8,12,16)

C)Printgcd(8),gcd(12),gcd(16)

D)Printgcd(8,gcd(12,16))

(23)有下面的程序段,其功能是按图1所示的规律输出数据

Dima(3,5)AsInteger

Fori=1To3

Forj=1To5

a(i,j)=i+j

Printa(i,j);

Next

Print

Next

若要按图2所示的规律继续输出数据,则接在上述程序段后面的程序段应该是

A)Fori=iTo5B)Fori=1To3

Fori=1To3Forj=1To5

Printa(j,i);Printa(j,i);

NextNext

PrintPrint

NextNext

C)Forj=1To5D)Fori=1To5

Fori=1To3Forj=1To3

Printa(j,1);Printa(i,j);

NextNext

PrintPrint

NextNext

(24)窗体上有一个Text1文本框,一个Command1命令按钮,并有以下程序

PrivateSubCommand1_click()

Dimn

IfText1.Text<>"123456"Then

n=n+1

print"口令输入错误"&n&"次"

EndIf

EndSub

希望程序运行时得到左图所示的效果,即:

输入口令,单击“确认口令”命令按钮,若输入的口令不是“123456”,则在窗体上显示输入错误口令的次数。

但上面的程序实际显示的是右图所示的效果,程序需要修改。

下面修改方案中正确的是

A)在Dimn语句的下面添加一句:

n=0

B)把Print"口令输入错误"&n&"次"改为Print"口令输入错误"+n+"次"

C)把Print"口令输入错误"&n&"次"改为Print"口令输入错误"&Str(n)&"次"

D)把Dimn改为Staticn

(25)要求当鼠标在图片框P1中移动时,立即在图片框中显示鼠标的位置坐标。

下面能正确实现上述功能的事件过程是

A)PrivateSubP1_MouseMove(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)

PrintX,Y

EndSub

B)PrivateSubP1_MouseDown(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)

Picture.PrintX,Y

EndSub

C)PrivateSubP1_MouseMove(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)

P1.PrintX,Y

EndSub

D)PrivateSubForm_MouseMove(ButtonAsInteger,ShiftAsInteger,xAsSingle,YAsSingle)

P1.PrintX,Y

EndSub

(26)计算霄的近似值的一个公式是

某人编写下面的程序用此公式计算并输出π的近似值:

PrivateSubCommand1_Click()

PI=1

Sign=1

n=20000

Fork=3Ton

sign=-sign

PI=PI+sign/k

Nextk

PrintPI*4

Endsub

运行后发现结果为3.22751,显然,程序需要修改。

下面修改方案中正确的是

A)把Fork=3Ton改为Fork=1Ton

B)把n=20000改为n=20000000

C)把Fork=3Ton改为Fork=3TonStep2

D)把PI=1改为PI=0

(27)下面程序计算并输出的是

PrivateSubCommand1_Click()

a=10

s=0

Do

s=s+a*a*a

a=a-1

Loopuntila<=0

Prints

Endsub

A)13+23+33+…103的值B)10!

+…+3!

+2!

+1!

的值

C)(1+2+3+…+10)3的值D)10个103的和

(28)若在窗体模块的声明部分声明了如下自定义类型和数组

PrivateTyperec

CodeAsInteger

CaptionAsString

EndType

Dimart(5)Asrec

则下面的输出语句中正确的是

A)Printarr.Code

(2),arr.Caption

(2)B)Printarr.Code,arr.Caption

C)Printarr

(2).Code,arr

(2).CaptionD)PrintCode

(2),Caption

(2)

(29)设窗体上有一个通用对话框控件CD1,希望在执行下面程序时,打开如图所示的文件对话框

PrivateSubCommand1_Click()

CD1.DialogTitle="打开文件"

CD1.InitDir="C:

\"

CD1.Filter="所有文件|*.*||Word文档|*.doc|文本文件|*.txt"

CD1.FileName=""

CD1.Action=1

IfCD1.FileName=""Then

Print"未打开文件"

Else

Print"要打开文件"&CD1.FileName

EndIf

EndSub

但实际显示的对话框中列出了C:

\下的所有文件和文件夹,“文件类型”一栏中显示的是“所有文件”。

下面的修改方案中正确的是

A)把CD1.Action=1改为CD1.Action=2

B)把"CD1.Filter="后面字符串中的“所有文件”改为“文本文件”

C)在语句CD1.Action=1的前面添加:

CD1.FilterIndex=3

D)把CD1.FileName=""改为CD1.FileName="文本文件"

(30)下面程序运行时,若输入395,则输出结果是

Privatesubcommand1_Click()

Dimx%

x=InputBox("请输入一个3位整数")

PrintxMod10,x\100,(xMod100)\10

EndSub

A)395B)539C)593D)359

(31)窗体上有List1、List2两个列表框,List1中有若干列表项(见图),并有下面的程序:

PrivatesubCommand1_Click()

Fork=List1.ListCoum-1To0step-1

IfList1.Selected(k)Then

List2.AddItemList1.List(k)

List1.RemoveItemk

EndIf

Nextk

EndSub

程序运行时,按照图示在List1中选中2个列表项,然后单击Command1命令按钮,则产生的结果是

A)在List2中插入了“外语”、“物理”两项

B)在List1中删除了“外语”、“物理”两项

C)同时产生A)和B)的结果

D)把List1中最后1个列表项删除并插入到List2中

(32)设工程中有2个窗体:

Form1、Form2,Form1为启动窗体。

Form2中有菜单,其结构如表。

要求在程序运行时,在Form1的文本框Text1中输入口令并按回车键(回车键的ASCII码为13)后,隐藏Form1,显示Form2。

若口令为"Teacher",所有菜单项都可见;否则看不到"成绩录入"菜单项。

为此,某人在Form1窗体文件中编写如下程序:

PrivateSubText1_KeyPress(KeyAsciiAsInteger)

IfKeyAscii=13Then

IfText1.Text="Teacher"Then

Form2.input.Visible=True

Else

Form2.input.Visible=False

EndIf

EndIf

Form1.Hide

Form2.Show

EndSub

菜单结构

标题

名称

级别

成绩管理

mark

1

成绩查询

query

2

成绩录入

input

2

程序运行时发现刚输入口令时就隐藏了Form1,显示了Form2,程序需要修改。

下面修改方案中正确的是

A)把Form1中Text1文本框及相关程序放到Form2窗体中

B)把Form1.Hide、Form2.Show两行移到2个EndIf之间

C)把IfKeyAscii=13Then改为IfKeyAscii="Teacher"Then

D)把2个Form2.input.Visible中的"Form2."删去

(33)某人编写了下面的程序,希望能把Text1文本框中的内容写到out.txt文件中

PrivateSubCommand1_Click()

Open"out.txt"ForOutputAs

Print"Text1"

Close#2

Endsub

调试时发现没有达到目的,为实现上述目的,应做的修改是

A)把Print"Text1"改为Print#2,Text1B)把Print"Text1"改为PrintText1

C)把Print"Text1"改为Write"Text1"D)把所有#2改为#1

(34)窗体上有一个名为Command1的命令按钮,并有下面的程序:

PrivateSubCommand1_Click()

Dimart(5)AsInteger

Fork=1To5

arr(k)=k

Nextk

progarr()

Fork=1To5

Printarr(k);

Nextk

Endsub

Subprog(a()AsInteger)

n=UBound(a)

Fori=nTo2step-1

Forj=1Ton-1

ifa(j)<a(j+1)Then

t=a(j):

a(j)=a(j+1):

a(j+1)=t

EndIf

Nextj

Nexti

Endsub

程序运行时,单击命令按钮后显示的是

A)12345B)54321C)01234D)43210

(35)下面程序运行时,若输入“VisualBasicProgramming”,则在窗体上输出的是

PrivateSubCommand1_Click()

Dimcount(25)AsInteger,chAsString

ch=UCase(InputBox("请输入字母字符串"))

Fork=1ToLen(ch)

n=Asc(Mid(ch,k,1))-Asc("A")

Ifn>=0Then

count(n)=count(n)+1

EndIf

Nextk

m=count(0)

Fork=1To25

Ifm<count(k)Then

m=count(k)

EndIf

Nextk

Printm

Endsub

A)0B)1C)2D)3

二、填空题

(1)一个队列的初始状态为空。

现将元素A,B,C,D,E,F,5,4,3,2,1依次入队,然后再依次退队,则元素退队的顺序为______。

(2)设某循环队列的容量为50,如果头指针front=45(指向队头元素的前一位置),尾指针rear=10(指向队尾元素),则该循环队列中共有______个元素。

(3)设二叉树如下:

对该二叉树进行后序遍历的结果为______。

(4)软件是______、数据和文档的集合。

(5)有一个学生选课的关系,其中学生的关系模式为:

学生(学号,姓名,班级,年龄),课程的关系模式为:

课程(课号,课程名,学时),其中两个关系模式的键分别是学号和课号,则关系模式选课可定义为:

选课(学号,______,成绩)。

(6)为了使复选框禁用(即呈现灰色),应把它的Value属性设置为______。

(7)在窗体上画一个标签、一个计时器和一个命令按钮,其名称分别为Label1、Timer1和Command1,如图1所示。

程序运行后,如果单击命令按钮,则标签开始闪烁,每秒钟“欢迎”二字显示、消失各一次,如图2所示。

以下是实现上述功能的程序,请填空。

PrivateSubForm_Load()

Label1.Caption="欢迎"

Timer1.Enabled=False

Timer1.Interval:

__[7]___

Command1.Caption="开始闪烁"

Endsub

PrivateSubTimer1_Timer()

Label1.visible=[8]

Endsub

PrivateSubCommand1_Click()

[9]

Endsub

(8)有如下程序:

PrivateSubForm_Click()

n=10

i=0

Do

i=i+n

n=n-2

Loopwhilen>2

Printi

Endsub

程序运行后,单击窗体,输出结果为[10]。

(9)在窗体上画一个名称为Command1的命令按钮。

然后编写如下程序:

OptionBase1

PrivateSubCommand1_click()

Dima(10)AsInteger

Fori=1To10

a(i)=1

Next

callswap([11])

Fori=1To10

Printa(i);

Next

Endsub

Subswap(b()AsInteger)

n=UBound(b)

Fori=1Ton/2

t=b(i)

b(i)=b(n)

b(n)=t

[12]

Next

Endsub

上述程序的功能是,通过调用过程swap,调换数组中数值的存放位置,即a

(1)与a(10)的值互换,a

(2)与a(9)的值互换,……。

请填空。

(10)在窗体上画一个文本框,其名称为Text1,在属性窗口中把该文本框的MultiLine属性设置为True,然后

编写如下的事件过程:

PrivatesubForm_Click()

Open"d:

\test\smtext1.txt"ForInputAs#1

DoWhileNot[13]

LineInput#1,aspect$

whole$=whole$+aspect$+Chr$(13)+Chr$(10)

Loop

Text1.Text=whole$

[14]

Open"d:

\test\smtext2.txt"ForOutputAs#1

Print#1,[15]

Close#1

Endsub

运行程序,单击窗体,将把磁盘文件smtext1.txt的内容读到内存并在文本框中显示出来,然后把该文本框中的内容存入磁盘文件smtext2.txt。

请填空。

2010年3月笔试试卷

一、选择题

(1)A)[解析]对长度为n的有序链表进行查找,最坏情况是从最小值开始查找最大值(或从最大值开始查找最小值),这个过程需要比较的次数为n,故选项A)正确。

对分查找只能针对随机存取的有序表进行,而有序链表只能进行顺序存取,不能进行随机存取,在有序链表上不能进行对分查找,故B)、C)、D)选项都错误。

(2)D)[解析]算法的时间复杂度是指算法需要消耗的时间资源,是独立于机器的,选项D)正确;相同的算法在不同的机器上运行时间可能不同,选项A)错误;算法所处理的数据量与算法无关,选项B)错误;程序的长短与程序执行时需要消耗的时间资源没有必然的关系,比如一个条件语句可以很长,但只需判断一次,而一个循环语句可能只有几行,但可以执行很多次,故选项c)错误。

(3)B)[解析]编辑软件、教务管理软件属于应用软件,操作系统属于系统软件,浏览器属于支撑软件,故本题答案选B。

(4)A)[解析]软件调试的任务是诊断和改正程序中的错误,本题正确答案为A)。

其他三项描述不正确,选项B)描述不全面,选项C)描述太绝对,选项D)描述不符合定义。

(5)C)[解析]数据流图是结构化分析方法中使用的工具,它以图形的方式描绘数据在系统中流动和处理的过程。

软件结构图是软件概要设计的工具,而详细设计是对概要设计的每个模块进行细化,UML是面向对象的需求分析的工具。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 外语学习 > 韩语学习

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

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