




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
国家二级VB机试(数据类型及运算)模拟试卷2(共9套)(共258题)国家二级VB机试(数据类型及运算)模拟试卷第1套一、选择题(本题共30题,每题1.0分,共30分。)1、窗体上有两个名称分别为Text1、Text2的文本框。Text1的KeyUp事件过程如下:PrivateSubTextl_KeyUp(KeyCodeAsInteger,ShiftAsInteger)DimCAsStringc=UCase(Chr(KeyCode)):Text2.Text=Chr(Asc(c)+2)EndSub当向文本框Text1中输入小写字母a时,文本框Text2中显示的是A、AB、aC、CD、C标准答案:C知识点解析:本题考查的考点是有关字符转换函数的。UCase函数的功能为强制转成大写字母;Chr函数的功能是把整数按照ASCII码转换成字母;Asc函数的功能是把字母转换成对应的ASCII码。本题中变量c的值是大写字母“A”,最终结果是大写字母“C”。2、窗体上有名称分别为Text1、Text2的文本框,名称为Commandl的命令按钮。运行程序,在Textl中输入“FormList”,然后单击命令按钮,执行如下程序:PrivateSubCommandl_Click()Text2.Text=UCase(Mid(Text1.Text,5,4))EndSub在Text2中显示的是A、formB、listC、FORMD、LIST标准答案:D知识点解析:Mid(字符串,起始位置[,个数])函数用于从已有字符串中取出从指定位置开始的含指定个数字符的字符串,UCase()函数用于将字符串中小写字母转化为大写字母,原本大写或非字母字符保持不变。3、窗体上有1个名称为Commandl的命令按钮,事件过程如下:PrivateSubCommandl_Click()m=-3.6IfSgn(m)Thenn=Int(m)Elsen=Abs(m)EndIfPrintnEndSub运行程序,并单击命令按钮,窗体上显示的内容为A、-4B、-3C、3D、3.6标准答案:A知识点解析:Int函数的作用是去返回不大于参数的最大整数,例如Int(4.6)=4,Int(一4.6)=一5;VB中的逻辑值True和False和整型值之间会自动进行类型转换,其中一1转换为True,0转换为False。本题中由于m为负数,所以Sgn(m)的值为一1,即条件为真,会返回不大于m的最大整数值即一4。4、设有如下程序:PrivateSubForm_Click0num=InputBox(”请输入一个实数”):P=InStr(num,”.”)Ifp>0ThenPrintMid(num,P+1)ElsePrint”END”EndIfEndSub运行程序,单击窗体,根据提示输入一个数值。如果输入的不是实数,则程序输出“END”:否则A、用字符方式输出该实数B、输出该实数的整数部分C、输出该实数的小数部分D、去掉实数中的小数点,保留所有数码输出标准答案:C知识点解析:字符串匹配函数Instr用于查找第二个参数在第一个参数中第一次出现的位置,若未找到返回0;Mid(字符串,起始位置[,个数])函数用于从已有字符串中取出从指定位置开始的含指定个数字符的字符串,若不指定个数将返回字符串中从参数“起始位置”到字符串尾端的所有字符。本题实际就是先找到小数点的位置,然后输出小数点后面的部分,即小数部分。5、在窗体上画一个文本框,名称为Text1,然后编写如下程序:PrivateSubForm_Load()Text1.Text=””:Textl.SetFocusEndSubPrivateSubForm_Click()DimaAsString,sAsStringa=Text1.Text:s=””Fork=1ToLen(a)s=UCase(Mid(a,k,1))+sNextkText1.Text=sEndSub程序运行后,在文本框中输入一个字符串,然后单击窗体,则文本框中的内容A、与原字符串相同B、与原字符串中字符顺序相同,但所有字母均转换为大写C、为原字符串的逆序字符串,且所有字母转换为大写D、为原字符串的逆序字符串标准答案:C知识点解析:Mid(字符串,起始位置[,个数])函数用于从已有字符串中取出从指定位置开始的含指定个数字符的字符串,UCasef)函数用于将字符串中小写字母转化为大写字母,原本大写或非字母字符保持不变。本题中在循环内每次取出第k位个字符并且连接到结果字符串的前面,所以结果字符串是源字符串的逆序字符串。6、在窗体上画一个命令按钮,然后编写如下事件过程:PrivateSubCommandl_Click()aS=InputBox(”请输入一个二进制数”)n=Len(a$)Fori=1TonDec=Dec*2+____(a$,i,1)NextiPrintDecEndSub程序功能为:单击命令按钮,将产生一个输入对话框,此时如果在对话框中输入一个二进制数,并单击“确定”按钮,则把该二进制数转换为等值的十进制数。这个程序不完整,应在横线处填入的内容是A、LeftB、RightC、ValD、Mid标准答案:D知识点解析:Mid(字符串,起始位置[,个数])函数用于从已有字符串中取出从指定位置开始的含指定个数字符的字符串。本题中要将二进制数转换为十进制数,应该取出二进制数的每一位然后乘以位权。7、以下程序的功能是随机产生10个两位的整数:OptionBase1PrivateSubCommandl_Click()Dima(10)AsInteger,iAsIntegerRandomizeFori=1To10a(i)=Int(Rnd*100)+1Printa(i)NextiEndSub运行以上程序,发现有错误,需要对产生随机数的语句进行修改。以下正确的修改是A、a(i)=Int(Rnd*100)B、a(i)=Int(Rnd*90)+10C、a(i)=Int(Rnd*100)+10D、a(i)=Int(Rnd*101)标准答案:B知识点解析:随机数函数Rnd的功能是用于产生一个小于1但大于或等于0的随机数。为了生成某个指定范围内的随机整数,可使用以下公式:Int((upperbound—lowerbound+1)*Rnd+lowerbound),其中upperbound是随机整数范围的上限,lowerbound,随机整数范围的下限。本题中upperbound为99,lowerbound为10。8、窗体上有一个名称为Commandl的命令按钮,单击该按钮时所实现的功能是产生10个随机整数,然后从键盘输入一个整数,查找该数在数组中的位置。若找到,输出该数的位置;若没有找到,给出相应的提示。该命令按钮的单击事件过程如下:PrivateSubCommandl_Click()Dima(10)AsInteger,xAsIntegerFori=1To10a(i)=Int(Rnd*100)Nextx=InputBox(”输入100以内的整数:”)P=0Fori=1To10Ifa(i)=xThenp=i:ExitForEndIfNextIfp=0ThenPrint”没有找到与输入数据相同的数!”ElsePrintStr(x)+”在数组中的位置是”+Str(p)EndIfEndSub对于上述事件过程,以下叙述中正确的是A、本程序实际产生的随机数是0-99B、若产生的随机数中有相同数,则p是其中最后一个数的位置C、程序有错,p的初值设置不对D、程序有错,InputBox函数产生的数据与x的类型不匹配标准答案:A知识点解析:随机数函数Rnd的功能是用于产生一个小于1但大于或等于0的随机数。为了生成某个指定范围内的随机整数,可使用以下公式:Int((upperbound-lowerbound+1)*Rnd+lowerbound),其中upperbound是随机整数范围的上限,lowerbound是随机整数范围的下限。本题中upperbound为99,10werbound为0。9、在VisualBasic中,表达式3*2\5Mod3的值是A、1B、0C、3D、出现错误提示标准答案:A知识点解析:本题考查的考点是有关算术运算的。按照运算符的优先级,首先执行3*2得到6,然后用6整除5得到1,最后用1对3求余数得到最终结果1。本题要注意“\”为整除运算符,以及Mod取余运算的算法。10、表达式2*3^2+4*2/2+3^2的值是A、30B、31C、49D、48标准答案:B知识点解析:本题考查的考点是有关算术运算的。按照运算符的优先级,首先执行3^2得到9,然后用2乘以9得到18;然后计算4*2/2=4;最后计算3^2得到9,三者相加得到最后结果31。11、设a=4,b=5,c=6,执行语句PrintaA、TrueB、FalseC、出错信息D、012、以下关系表达式中,其值为True的是A、”XYZ”>”XYz”B、”VisualBasic”<>”visualbasic”C、”the”=”there”D、”Integer”<”Int”13、把数学表达式表示为正确的VB表达似乎应该是A、(5x+3)/(2y一6)B、x*5+3/2*y一6C、(5*x+3)÷(2*y-6)D、(x*5+3)/(y*2—6)14、下面程序运行时,若输入395,则输出结果是PrivateSubCommandl_Click()Dimx%x=InputBox(”请输入一个3位整数”)PrintxMod10,x\100,(xMod100)\10EndSubA、395B、539C、593D、35915、设a=2,b=3,c=4,d=5,下列表达式的值是a>bAndc<=dOr2*a>cA、TrueB、FalseC、一1D、116、设a=10,b=5,c=1,执行语句Printa>b>c窗体上显示的是A、TrueB、FalseC、1D、出错17、要求如果x被7除余2,则输出x的值,下列语句中不能实现此功能的语句是A、Ifxmod7=2ThenPrintxB、Ifx一(x\7)*7=2ThenPrintxC、Ifx一(x/7)*7=2ThenPrintxD、Ifx—Int(x/7)*7=2ThenPrintx18、满足下列条件之一的年份是闰年:1)年份能被4整除但不能被100整除2)年份能被400整除若y代表年份,下面判断闰年的正确表达式是A、yMod4AndyMod100OryMod400B、yMod4=0OryMod100<>0AndyMod400=0C、yMod100<>0And(yMod4=0OryMod400=0)D、yMod4=0AndyMod100<>0OryMod400=019、已知a=6,b=15,c=23,则语句PrintSgn(a+bMod6-c\a)&a+b的输出结果为A、6B、16C、31D、12120、设a=2,b=3,c=4,d=5,表达式Nota<=cOr4*c=b^2Andb<>a+c的值是A、一1B、1C、TrueD、False21、已知:x=一6y=39则表达式“y\x*Sgn(x)”的值为A、一6.5B、.6C、6D、6.522、设:a=12,b=5,c=7,表达式x=(a\c+aModb)+Int(13/5)的值是A、5B、6C、7D、923、表达式12/2\4的值是A、1.5B、2C、4D、124、设:a=2,b=8,c=6,d=3,表达式a>bAndNot(c>d)Ord>c的值是A、1B、0C、TrueD、False25、数学式y2>x>=10在VB中应表示为A、y/y>xAnd10<=xB、Sqr(y)>xAndx>=10C、Sqr(y)>xOrx<=10D、y*y>xOrx>=1026、设a=10,b=4,c=5,d=7,表达式a>bAndNotcA、TrueB、FalseC、1D、027、以下叙述中错误的是A、续行符与它前面的字符之间至少要有一个空格B、VisualBasic中使用的续行符为下划线()C、以撇号(’)开头的注释语句可以放在续行符的后面D、VisualBasic可以自动对输入的内容进行语法检查28、下列有语法错误的赋值语句是A、y=7=9B、s=m+nC、Text1.Text=10D、m+n=1229、输入VB源程序时,若一个命令行中包含两个语句,则两个语句之间的分隔符应使用A、冒号(:)B、分号(;)C、下划线(_)D、连字符(-)30、VisualBasic源程序的续行符为A、冒号(:)B、分号(;)C、下划线(_)D、连字符(-)国家二级VB机试(数据类型及运算)模拟试卷第2套一、选择题(本题共29题,每题1.0分,共29分。)1、若变量a未事先定义而商接使用(例如:a=0),则变量a的类型是A、IntegerB、StringC、BooleanD、Variant标准答案:D知识点解析:本题考查的考点是有关变量定义的。在VB中有一种特殊的类型:变体类型(Variant),这种类型可以包含大部分其它类型的数据。在VB中,如果没有显式声明变量的类型,则该变量默认为变体型(Variant)。2、为了声明一个长度为128个字符的定长字符串变量StrD,以下语句中正确的是A、DimStrDAsStringB、DimStrDAsString(128)C、DimStrDAsString[128]D、DimStrDAsString*128标准答案:D知识点解析:字符串(String)是一个字符序列。由ASCII字符组成,包括标准的ASCII字符和扩展ASCII字符。声明变量为定长字符串,需要在类犁名称String后面加上*长度的标识。3、VB中,若没有显式声明变量的数据类型,则默认的类型是A、整型AB、字符型C、日期型D、变体类型标准答案:D知识点解析:VB允许隐式声明变量。若没有显式声明变量的数据类型,则默认的类型是变体型。4、长整型常数的类型说明符为A、%B、#C、&D、*标准答案:C知识点解析:在VisualBaSic中规定一个变量的数据类型可以用类型说明符来标识,如%表示整型、$表示字符串型、!表示单精度浮点型、#表示双精度浮点型、&表示长整型。5、以下变量名中合法的是A、x2-1B、printC、str_nD、2x标准答案:C知识点解析:变量是一个名字,给变量命名时应遵循以下4条规则:名字只能由字母、数字和F划线组成:名字的第1个字符必须是英文字母,最后一个字符可以是类型说明符;名字的有效字符为255个;不能用ⅥsualBaSic的保留字做变量名,也不能用末尾带有类型说明符的保留字做变量名,但可以在变量名中的保留字嵌入。6、以下合法的VB变量名是A、#1B、123_aC、stringD、x_123标准答案:D知识点解析:变量是用一个名称来表示的,给变量命名时应遵循规则:名称只能由字母、数字和下划线组成:名称的第一个字符必须是英文字母,最后一个字符可以是类型说明符:名称的有效字符为255个;不能用VB的保留字作变量名,但变量名中可以包含保留字,如ConstA;变量名也不能是末尾带有类型说明符的保留字,如Dim!是不合法的变量名;不区分字母的大小写。7、以下合法的VB变量名是A、xB、2yC、a#bD、x_1_x标准答案:D知识点解析:变量是用一个名称来表不的,给变量命名时应遵循规则:名称只能由字母、数字和下划线组成:名称的第一个字符必须是英文字母,最后一个字符可以是类型说明符:名称的有效字符为255个:不能用VB的保留字作变量名,但变量名中可以包含保留字,如ConstA;变量名也不能是末尾带有类型说明符的保留字,如Dim!是不合法的变量名;不区分字母的大小写。8、设在一个工程的窗体中有如下代码:PublicxAsIntegerPrivateSubForm_Load()DimyAsIntegerEndSub在该工程的标准模块的声明部分有代码:PublicaAsInteger:PrivatebAsInteger关于上述代码,以下叙述中错误的是A、变量x的作用域是整个工程B、变量y的作用域是Form_Load过程C、变量a的作用域是整个工程D、变量b的作用域是整个标准模块标准答案:A知识点解析:根据变量的定义位置和定义关键字的不同,变量可以分为以下3种类型:.局部(Local)变量:在过程(事件过程或通用过程)内定义的变量,其作用域为该变量所在的过程,定义时使用Dim、Static关键字;.模块(Module)变量:模块变量包括窗体变量和标准模块变量2种。其中,窗体变量可用于该窗体内的所有过程,其作用域为该变量所在的窗体;标准模块变量是在标准模块中定义的变量,变量的声明和使用与窗体模块中窗体变量类似。区别是标准模块是只含有程序代码的应用程序文件,其扩展名为.bas:.全局(Public)变量:全局变量也称为全程变量,在标准模块的声明部分声明。全局变量的作用域最大,可以在工程的每个模块、每个过程中使用。9、在窗体模块的声明部分声明变量时,不能使用的关键字是A、DimB、PublicC、PrivateD、Static标准答案:D知识点解析:根据变量的定义位置和定义关键字的不同,变量可以分为以下3种类型:.局部(Local)变量:在过程(事件过程或通用过程)内定义的变量,其作用域为该变量所在的过程,定义时使用Dim、Static关键字;.模块(Module)变量:模块变量包括窗体变量和标准模块变量2种。其中,窗体变量可用了该窗体内的所有过程,其作用域为该变量所在的窗体;标准模块变量是在标准模块中定义的变量,变量的声明和使用与窗体模块中窗体变量类似。区别是标准模块是只含有程序代码的应用程序文件,其扩展名为.bas:.全局(Public)变量:全局变量也称为全程变量,在标准模块的声明部分声明。全局变量的作用域最大,可以在工程的每个模块、每个过程中使用。10、在标准模块中,将a定义为全局整型变量的语句是A、StaticaAsIntegerB、DimaAsIntegerC、PrivateaAsIntegerD、PublicaAsInteger标准答案:D知识点解析:根据变量的定义位置和定义关键字的不同,变量可以分为以下3种类型:.局部(Local)变量:在过程(事件过程或通用过程)内定义的变量,其作用域:该变量所在的过程,定义时使用Dim、Static关键字;.模块(Module)变量:模块变量包括窗体变量和标准模块变量2种。其中,窗体变量可用于该窗体内的所有过程,其作用域为该变量所在的窗体;标准模块变量是在标准模块中定义的变量,变量的声明和使用与窗体模块中窗体变量类似。区别是标准模块是只含有程序代码的应用程序文件,其扩展名为.bas:.全局(Public)变量:全局变量也称为全程变量,在标准模块的声明部分声明。全局变量的作用域最大,可以在工程的每个模块、每个过程中使用。11、标准模块中有如下程序代码:PublicxAsInteger,yAsIntegerSubvat_pub()x=10:y=20EndSub在窗体上有1个命令按钮,并有如下事件过程:PrivateSubCommand1_Click()DimxAsIntegerCallvar_pubx=x+100:y=y+100:Printx;yEndSub运行程序后单击命令按钮,窗体上显示的是A、100100B、100120C、110100D、110120标准答案:B知识点解析:在标准模块用Public关键字声明的全局变量,其作用域最大,可以在工程的每个模块、每个过程中使用。但当不同作用范围的变量重名时,有效范围小的变量会屏蔽有效范嗣大的变量。当一个全局变量与一个过程级变量重名时,当在本过程中直接使用这个变量名时,被认为是指局部变量。如果要在这个过程中使用同名的全局变量,要使用模块名来修饰变量名。在本题的事件过程中,由于变量x被声明为过程级变量,其初始值为0,调用过程var_pub不会改变其值,而变量y为标准模块中声明的全局变量,调用过程var_pub后其值为20。故最后输出结果为100和120。12、窗体上有名称为Command1的命令按钮,名称分别为Label1、Label2、Label3的标签。编写如下程序:PrivatexAsIntegerPrivateSubCommand1_Click()StaticyAsIntegerDimzAsIntegern=5:z=z+n:y=y+n:x=x+yLabel1=x:Label2=y:Label3=zEndSub运行程序,连续3次单击命令按钮后,3个标签中分别显示的是A、555B、15105C、151515D、30155标准答案:D知识点解析:Static语句在过程级别中使用,用于声明变量并分配存储空间,在整个代码运行期间都能保留使用static语句声明的变量的值。在窗体的声明段用Private声明的变量为模块级变量,其作用域为整个窗体。本题中,当第1次单击时,静态变量y的初值为0,执行调用语句后,静态变量y的值应为5,模块级变量x的值为5;当第2次单击时,静态变量y的初值为5,执行调用语句后,静态变量y的值应为10,模块级变量x的值为15;当第3次调用过程时,静态变量y的初值为10,执行调用语句后,静态变量y的值应为15,模块级变量x的值为30。13、以下不能输出“Program”的语句是A、PrintMid("VBProgram",3,7)B、PrintRight("VBProgram",7)C、PrintMid("VBProgram",3)D、PrintLeft("VBProgram",7)标准答案:D知识点解析:本题考查的考点是有关取子串函数的。在VB中有三种取子串函数;Left函数用于在字符串左端开始取n个字符;Right函数用于在字符串右端开始取n个字符(注意子串中字符的顺序与母串中相同);Mid函数可以实现在任何位置取任何长度的子串,其中长度省略的话将会一直取到串尾。本题中选项D的结果是VBprogr,不符合题意。14、表达式Sgn(0.25)的值是A、-1B、0C、1D、0.5标准答案:C知识点解析:Sgn函数会返回参数的符号,如果参数为正数返回1,为负数返回-1。15、以下能对正实数d的第3位小数四舍五入的表达式是A、0.01*Int(d+0.005)B、0.01*Int(100*(d+0.005))C、0.01*Int(100*(d+0.05))D、0.01*Int(d+0.05)标准答案:B知识点解析:Int函数会返回不大于参数的最大整数,要对第3位小数进行四舍五入,需要先将d自加0.005,这样如果第三位小数大于5就将进位;接下来乘以100,这样第3位小数就变成了第一位小数,对其做Int函数留下整数部分,最终再乘以0.01得到结果。16、在窗体上画两个文本框,其名称分别为Text1和Text2,然后编写如下程序:PrivateSubForm_Load()Text1.Text="":Text2.Text="":Text1.SetFocusEndSubPrivateSubText1_Change()Text2.Text=Mid(Text1.Text,6)EndSub程序运行后,如果在文本框Text1中输入ChinaBeijing,则在文本框Text2中显示的内容是A、ChinaBeijingB、ChinaC、BeijingD、ChinaB标准答案:C知识点解析:Mid(string,start[,length])函数用于从已有字符串中取出从指定位置开始的含指定个数字符的字符串,如果start参数超过了string参数中字符的数日,将返回空字符串,如果省略或length参数超过文本的字符数(包拓start处的字符),将返回字符串中从start到字符串结束的所有字符。本题程序运行后,当在文本框Text1中输入字符数达到或超过6时,在文本框Text2中将随即显示输入字符中从第6个字符开始的所有字符,全部字符输入后,文本框Text2中的内容为“Beijing”。17、设有如下通用过程:PublicFunctionFun(xStrAsString)AsStringDimtStrAsString,strLAsIntegertStr:"":strL=Len(xStr)i=strL/2DoWhilei<=strLtStr=tStr&Mid(xStr,i+1,1)i=i+1LoopFun=tStr&tStrEndFunction在窗体上画一个名称为Text1的文本框和一个名称为Command1的命令按钮。然后编写如在窗体上画一个名称为的文本框和一个名称为的命令按钮。然后编写如下的事件过程:PrivateSubCommand1_Click()DimS1AsStringS1="ABCDEF":Text1.Text=LCase(Fun(S1))EndSub程序运行后,单击命令按钮,文本框中显示的是A、ABCDEFB、abcdefC、defdefD、defabc标准答案:C知识点解析:本题考查的考点是有关字符串处理的。本题中过程中的循环变量i的初值是字符串长度的一半,终值是字符串长度,结合循环中的取子串函数,整个循环的功能是取得字符串的后一半放入tstr中,然后连接上自身的值返回到调用程序。18、窗体上有1个名称为Command1的命令按钮,事件过程如下:PrivateSubCommand1_Click()m=-3.6IfSgn(m)Thenn=Int(m)Elsen=Abs(m)EndIfPrintnEndSub运行程序,并单击命令按钮,窗体上显示的内容为A、-4B、-3C、3D、3.6标准答案:A知识点解析:Int函数的作用是去返回不大于参数的最大整数,例如Int(4.6)=4,Int(-4.6)=-5;VB中的逻辑值True和False和整型值之间会自动进行类型转换,其中-1转换为True,0转换为False。本题中由于m为负数,所以Sgn(m)的值为-1,即条件为真,会返回不大于m的最大整数值即-4。19、以下程序的功能是随机产生10个两位的整数:OptionBase1PrivateSubCommand1_Click()Dima(10)AsInteger,iAsIntegerRandomizeFori=1To10a(i)=Int(Rnd*100)+1:Printa(i)NextiEndSub运行以上程序,发现有错误,需要对产生随机数的语句进行修改。以下正确的修改是A、a(i)=Int(Rnd*100)B、a(i)=Int(Rnd*90)+10C、a(i)=Int(Rnd*100)+10D、a(i)=Int(Rnd*101)标准答案:B知识点解析:随机数函数Rnd的功能是用于产生一个小于1但大于或等于0的随机数。为了乍成某个指定范围内的随机整数,可使用公文:Int((upperbound-lowerbound+1)*Rnd+lowerbound),其中upperbotmd是随机整数范围的上限,lowerbound是随机整数范围的下限。本题中upperbound为99,lowerbound为10。20、窗体上有名称分别为Text1、Text2的文本框,名称为Command1的命令按钮。运行程序,在Textl中输入“FormList”,然后单击命令按钮,执行如下程序:PrivateSubCommand1_Click()Text2.Text=UCase(Mid(Text1.Text,5,4))EndSub在Text2中显示的是A、formB、listC、FORMD、LIST标准答案:D知识点解析:Mid(字符串,起始位置[,个数])函数用于从已有字符串中取出从指定位置开始的含指定个数字符的字符串,UCase()函数用于将字符串中小写字母转化为大写字母,原本大写或非字母字符保持不变。21、在窗体上画一个命令按钮,然后编写如下事件过程:PrivateSubCommand1_Click()a$=inputaox("请输入一个二进制数")n=Len(a$)Fori=1TonDec=Dec*2+_______(a$,i,1)NextiPrintDecEndSub程序功能为:单击命令按钮,将产生一个输入对话框,此时如果在对话框中输入一个二进制数,并单击“确定”按钮,则把该二进制数转换为等值的十进制数。这个程序不完整,应在横线处填入的内容是A、LeftB、RightC、ValD、Mid标准答案:D知识点解析:Mid(字符串,起始位置[,个数])函数用于从已有字符串中取出从指定位置开始的含指定个数字符的字符串。本题中要将二进制数转换为十进制数,应该取出二进制数的每一直然后乘以位权。22、表达式2*3^2+4*2/2+3^2的值是A、30B、31C、49D、48标准答案:B知识点解析:本题考查的考点是有关算术运算的。按照运算符的优先级,首先执行3^2得到9,然后用2乘以9得到18;然后计算4*2/2=4:最后计算3^2得到9,三者相加得到最后结果31。23、下面程序运行时,若输入395,则输出结果是PrivateSubCommand1_Click()Dimx%x=InputB&x("请输入一个3位整数")PrintxMod10,x\100,(xMod100)\10EndSubA、395B、539C、593D、359标准答案:B知识点解析:VB中常用算术运算符有8个,其中幂运算符(^)优先级最高:其次是取负(-)、乘(*)、浮点除(/)、整除(\)、取模(Mod)、加(+)、减(-)。24、满足下列条件之一的年份是闰年:1)年份能被4整除但不能被100整除2)年份能被400整除若y代表年份,下面判断闰年的正确表达式是A、yMod4AndyMod100OryMod400B、yMod4=0OryMod100<>0AndyMod400=0C、yMod100<>0And(yMod4=0OryMod400=0)D、YMod4=0AndyMod100<>0OryMod400=0标准答案:D知识点解析:逻辑运算的优先级低于天系运算。而且逻辑运算中优先级从高到低是Not→And→Or,据此判断D选项符合题意。25、设:a=12,b=5,c=7,表达式x=(a\c+aModb)+Int(13/5)的值是A、5B、6C、7D、9标准答案:A知识点解析:在一个包含多种运算的表达式中,优先级顺序为:首先进行函数运算,接着进行算术运算,然后进行关系运算(=、>、<、>=、<=、<>),最后进行逻辑运算(Not→And→Or→Xor→Eqv→Imp)。本题最后结果可以表达为(1+2)+2,结果为5。26、设a=10,b=4,c=5,d=7,表达式a>bAndNotc<d+6的值为A、TrueB、FalseC、1D、0标准答案:B知识点解析:在一个包含多种运算的表达式中,优先级顺序为:首先进行函数运算,接着进行算术运算,然后进行关系运算(=、>、<、>=、<=、<>),最后进行逻辑运算(Not→And→Or→Xor→Eqv→lmp)。本题最后结果可以表达为TrueAndNotTrue,结果为False。27、下列运算符中,优先级别最低的是A、NotB、LikeC、ModD、And标准答案:D知识点解析:在一个包含多种运算的表达式中,优先级顺序为:首先进行函数运算,接着进行算术运算,然后进行关系运算(=、>、<、>=、<=、<>),最后进行逻辑运算(Not→And→Or→Xor→Eqv→Imo)。28、下面程序的执行结果是PrivateSubCommand1_Click()a=0k=1DoWhilek<4x=k^k^a:k=k+1Printx;LoopEndSubA、1427B、111C、149D、000标准答案:B知识点解析:本题是一个简单的Do循环,共循环3次,每次都输出k^k^a;因为a的值始终不变均为0,所以无论k取何值,0次幂的结果都为1。29、VisualBasic源程序的续行符为A、冒号(:)B、分号(;)C、下划线(__)D、连字符(-)标准答案:C知识点解析:VisualBasic中的语句是执行具体操作的指令,通常一行输入一条语句。也可把多条语句放在一行,各语句间用冒号(:)隔开。还可通过续行符(续行符由一个空格加一个下划线组成“__”)将一条语句分别放在多行。国家二级VB机试(数据类型及运算)模拟试卷第3套一、选择题(本题共30题,每题1.0分,共30分。)1、若变量a未事先定义而直接使用(例如:a=0),则变量a的类型是A、IntegerB、StringC、BooleanD、yariant标准答案:D知识点解析:本题考查的考点是有关变量定义的。在VB中有一种特殊的类型:变体类型(Variant),这种类型可以包含大部分其它类型的数据。在VB中,如果没有显式声明变量的类型,则该变量默认为变体型(Variant)。2、为把圆周率的近似值3.14159存放在变量pi中,应该把变量pi定义为A、DimpiAsIntegerB、Dimpi(7)AsIntegerC、DimpiAsSingleD、DimpiAsLong标准答案:C知识点解析:本题考查的考点是有关VB中的数据类型的。VB提供了很多种数据类型,其中能接受小数值的有单精度型Single和双精度型Double。3、若在窗体模块的声明部分声明了如下自定义类型和数组PfivmeTyperecCodeAsInteger:CaptionAsStringEndTypeDimarr(5)Aslee则下面的输出语句中正确的是A、Printarr.Code(2),arr.Caption(2)B、Printarr.Code,arr.CaptionC、Printarr(2).Code,arr(2).CaptionD、PrintCode(2),Caption(2)标准答案:C知识点解析:在标准模块中可以声明自定义类型;该类型由Type关键字声明,在声明中要定义类型的所有域。若用自定义类型声明一个变量,则该变量拥有若干域,取得每个域的值需要用“变量名.域名”的形式。作为一个自定义类型的数组,首先要取出某个数组元素然后才能访问该元素的某个域,所以要想访问arr(2)的域,需要使用arr(2).Code和arr(2).Caption。4、如下关于变体类型变量的叙述中,错误的是A、变体类型数组中只能存放同类型数据B、使用Array初始化的数组变量,必须是Variant类型C、没有声明而直接使用的变量其默认类型均是VariantD、在同一程序中,变体类型的变量可以被多次赋以不同类型的数据标准答案:A知识点解析:变体型是一种可变的数据类型,可以表示任何值,包括数值、字符串、日期、时间等。所以在变体类型的数组中每个元素的数据类型可以不一致。没有声明而直接使用的变量其默认类型均是变体型,在同一程序中,变体类型的变量可以被多次赋以不同类型的数据,使用Array初始化的数组变量,必须是变体类型。5、为了声明一个长度为128个字符的定长字符串变量StrD,以下语句中正确的是A、DimStrDAsStringB、DimStrDAsString(128)C、DimStrDAsString[128]D、DimStrDAsString*128标准答案:D知识点解析:字符串(String)是一个字符序列,由ASCII字符组成,包括标准的ASCII字符和扩展ASCII字符。声明变量为定长字符串,需要在类型名称String后面加上*长度的标识。6、有如下语句序列:Dima,bAsIntegerPrintaPrintb执行以上语句序列,下列叙述中错误的是A、输出的a值是0B、输出的b值是0C、a是变体类型变量D、b是整型变量标准答案:A知识点解析:在VisualBasic中用户既可以显式声明一个变量,也可以不声明而直接使用变量,显式声明变量时每个变量都应使用As子句声明类型,否则该变量将被视为变体类型。本题中a是变体类型变量,默认初值为False;b是整型变量,默认初值为0。7、以下自定义数据类型的语句中,正确的是A、TypestudentIDAsString*20nameAsString*10ageAsIntegerEndstudentB、TypestudentIDAsString*20nameAsString*10ageAsIntegerEndTypeC、TypestudentIDAsStringnameAsStringageAsIntegerEndstudentD、TypeIDAsString*20nameAsString*10ageAsIntegerEndTypestudent标准答案:B知识点解析:Type语句用于在模块级别中定义一个用户自己的数据类型,其本质上是一个数据类型集合,它含有一个或一个以上的元素,每个元素可以被定义为不同的数据类型。自定义类型中的元素可以是变长字符串,也可以是定长字符串。但在随机文件中使用时,必须使用定长字符串,一般格式为:String*常数。其中,“常数”是用于指定字符串长度的数。8、有数据定义语句:Dima,bAsIntegerDimx%,YasInteger执行语句后,不是整型变量的是A、aB、bC、xD、y标准答案:A知识点解析:在VisualBasic中用户既可以显式声明一个变量,也可以不声明而直接使用变量,显式声明变量时每个变量都应使用类型说明符或者As子句声明类型,否则该变量将被视为变体类型。9、VB中,若没有显式声明变量的数据类型,则默认的类型是A、整型B、字符型C、日期型D、变体类型标准答案:D知识点解析:VB允许隐式声明变量。若没有显式声明变量的数据类型,则默认的类型是变体型。10、假定有如下的程序段:DimintVarAsIntegerintvar=TruePrintintVar则输出结果是A、0B、一1C、TrueD、False标准答案:B知识点解析:VB中的逻辑值True和False在参与关系运算时会自动进行类型转换,其中True转换为一1,False转换为0。11、下面为单精度实型(即单精度浮点型)变量的是A、x$B、x&C、x!D、x#标准答案:C知识点解析:在VisualBasic中规定一个变量的数据类型可以用类型说明符来标识,如%表示整型、$表示字符串型、!表示单精度浮点型、#表示双精度浮点型、&表示长整型。12、设有以下定义语句:PrivateTypepointxAsIntegerYAsIntegerEndTypeDimaAspoint下面语句中正确的是A、a=12B、a.x=12C、point=12D、point.x=12标准答案:B知识点解析:Type语句用于在模块级别(过程外的任何代码都将看作模块级别代码,必须先列出声明,随后列出过程)中定义一个用户自己的数据类型,本质上是一个数据类型集合,它含有一个至一个以上的成员,每个成员可以被定义为不同的数据类型。当声明一个自定义类型变量后,就可通过“变量名.成员名"来访问自定义变量中的元素。自定义数据类型的声明与基本数据类型变量的声明相同。13、长整型常数的类型说明符为A、%B、#C、&D、@标准答案:C知识点解析:在VisualBasic中规定一个变量的数据类型可以用类型说明符来标识,如%表示整型、$表示字符串型、!表示单精度浮点型、群表示双精度浮点型、&表示长整型。14、双精度浮点数的类型说明符为A、%B、#C、&D、@标准答案:B知识点解析:在VisualBasic中规定一个变量的数据类型可以用类型说明符来标识,如%表示整型、$表示字符串型、!表示单精度浮点型、#表示双精度浮点型、&表示长整型。15、假定有如下的窗体事件过程:PrivateSubForm_Click()aS=”MicrosoftInteger”:bS=Right(aS,5)c$=Mid(aS,1,9):MsgBoxaS,34,b$,c$,5EndSub程序运行后,单击窗体,则在弹出的信息框的标题栏中显示的是A、MicrosoftVisualB、MicrosoffC、BasicD、5标准答案:C知识点解析:本题考查常用内部函数,Mid(a,M,N)功能是从a字符串左起第M位下标开始取值(包含M位),共取N位字符;Right(a,M)表示从右起第一位开始取值,向左取M位。在窗体的Click事件代码里面,b$=Ri.ght(aS,5)表示从a字符串最右边开始取出长度为5的子字符串,所以b$="teger";c$=Mid(a$,1,9)表示从a字符串的第一个位置开始取出长度为9的子字符串,即c$=”icrosoft”;MsgBoxa$,34,b$,c$,5弹出对话框,标题栏为b$,提示信息为a$。16、以下可以作为VisualBasic变量名的是A、A#AB、counstAC、3AD、?AA标准答案:B知识点解析:本题考查VB的用户标识符。选项A),使用了特殊字符“#”,错误;选项B)正确,可以作为变量名;选项C)以数字开头,错误;选项D)以特殊字符“?”开头,错误。17、执行以下程序段后,变量c$的值为aS=”VisualBasicProgramming”b$=”Quick”c$=b$UCase(Mid$(a$,7,6))Rights(a$,12)A、VisualBASICProgrammingB、OuickBasicProgrammingC、OUICKBasicProgrammingD、QuickBASICProgramming标准答案:D知识点解析:本题考查常用内部函数,UCase完成字符串转成大写公民,Mid和Right是字符串截取方法。变量c是由变量b、UCase(Mid$(a$,7,6))和Right(a$,12)三部分组成,因此c由“Quick”开始,Mid$(a$,7,6)为“Basic”,转换成大写后为“BASIC”,Right(a$,12)为“Programming”。18、下面可以正确定义2个整型变量和1个字符串变量的语句是A、Dimn,mAsInteger,sAsStringB、Dima%,b$,cAsStringC、DimaAsInteger,b,cAsStringD、Dimx%,YAsInteger,zAsString标准答案:D知识点解析:本题考查变量的定义,VB中定义变量的时候:%表示整型、&表示长整型、!表示单精度型、#表示双精度型、@表示通用型、$表示字符型。选项A)定义了一个Integer变量m和一个String变量s,变量n类型没有指定是默认的Variant类型;选项B)中的变量b为字符型;选项C)中变量b为Variant类型;选项D)正确。19、以下关于局部变量的叙述中错误的是A、在过程中用Dim语句或Static语句声明的变量是局部变量B、局部变量的作用域是它所在的过程C、在过程中用Static语句声明的变量是静态局部变量D、过程执行完毕,该过程中用Dim或Static语句声明的变量既被释放标准答案:D知识点解析:本题考查常量和变量。选项D)过程中用Dim语句声明的变量在过程执行完后会被释放,但Static语句声明的变量在过程执行完后不会被释放。其他选项均正确。20、设有如下变量声明语句:Dima,bAsBolean则下面叙述中正确的是A、a和b都是布尔型变量B、a是变体型变量,b是布尔型,变量C、a是整形变量,b是布尔型变量D、a和b都是变体型变量标准答案:B知识点解析:本题考查VB变量的定义。Dima,bAsBolean表示定义Bolean类型的变量b和变体类型变量a。21、下列可作为VisualBasic变量名的是A、A#AB、4ABCC、?xvD、PrintText标准答案:D知识点解析:本题考查VB总的用户标识符。选项A)含有特殊字符#,错误;选项B)以数字开头错误;选项C)以特殊字符?开始,错误;选项D)正确。22、下面定义窗体级变量a的语句中错误的是A、Dima%B、privatea%C、PrivateaAsIntegerD、Statica%标准答案:D知识点解析:本题考查变量的定义。选项A)、B)和C)均正确,选项D),窗体变量不能使用Static声明。23、以下选项中,不合法的VisualBasic的变量名是A、a5bB、xyzC、abD、andif标准答案:B知识点解析:本题考查的考点是有关VisualBasic中的变量命名规则的。VisualBasic中给变量命名只能由字母、数字和下划线组成,并且第一个字符必须是英文字母。24、执行语句DimX,YAsInteger后,A、X和Y均被定义为整型变量B、X和Y均被定义为变体类型变量C、X被定义为整型变量,Y被定义为变体类型变量D、X被定义为变体类型变量,Y被定义为整型变量标准答案:D知识点解析:本题考查的考点是有关变量定义的。在vB中有一种特殊的类型:变体类型(Variant),这种类型可以包含大部分其他类型的数据。在VB中,如果没有显式声明变量的类型,则该变量默认为变体型(Variant)。如果一条定义语句定义多个变量,每个变量必须单独说明其类型,若不说明则为变体型。25、以下变量名中合法的是A、x2-1B、printC、strnD、2x标准答案:C知识点解析:变量是一个名字,给变量命名时应遵循以下4条规则:名字只能由字母、数字和下划线组成;名字的第1个字符必须是英文字母,最后一个字符可以是类型说明符;名字的有效字符为255个;不能用VisualBasic的保留字做变量名,也不能用末尾带有类型说明符的保留字做变量名,但可以在变量名中的保留字嵌入。26、设窗体文件中有下面的事件过程:PrivateSubCommand1_Click()Dims:a%=100:PrintaEndSub其中变量a和s的数据类型分别是A、整型,整型B、变体型,变体型C、整型,变体型D、变体型,整型标准答案:C知识点解析:在VB中,可以显式声明变量和隐式声明变量。如果使用Dim、Public、Static等关键字来声明变量,则为显式声明,此时如果不指定变量的类犁,则该变量为变体型变量;如果不使用关键字声明变量而直接使用,视为隐式声明,此时变量的类型可以使用类型符号来规定,也可以默认为变体型。本题中的变量a就是使用%来隐式声明,其类型为整型。27、在标准模块中用Public关键字定义的变量,其作用域为A、本模块所有过程B、整个工程C、所有窗体D、所有标准模块标准答案:B知识点解析:在标准模块中用Public关键字定义的变量叫做全局变量,也称为全程变量,在标准模块的声明部分声明。全局变量的作用域最大,可以在工程的每个模块、每个过程中使用。28、如果在窗体模块中所有程序代码的前面有语句:Dimx,则x是A、全局变量B、局部变量C、静态变量D、窗体级变量标准答案:D知识点解析:模块级变量在模块的声明部分用Private或Dim声明。模块变量包括窗体变量和标准模块变量2种。其中,窗体变量声明在所有程序代码之前,可用于该窗体内的所有过程,其作用域为该变量所在的窗体;标准模块变量是在标准模块中定义的变量,变量的声明和使用与窗体模块中窗体变量类似。29、以下合法的VB变量名是A、#1B、123aC、stringD、x123标准答案:D知识点解析:变量是用一个名称来表示的,给变量命名时应遵循规则:名称只能由字母、数字和下划线组成;名称的第一个字符必须是英文字母,最后一个字符可以是类型说明符;名称的有效字符为255个;不能用VB的保留字作变量名,但变量名中可以包含保留字,如ConstA;变量名也不能是末尾带有类型说明符的保留字,如Dim!是不合法的变量名;不区分字母的大小写。30、有数据定义语句:DimX,YAsInteger以上语句表明A、X、Y均是整型变量B、X是整型变量,Y是变体类型变量C、X是变体类型变量,Y是整型变量D、X是整型变量,Y是字符型变量标准答案:C知识点解析:在VisualBasic中用户既可以显式声明一个变量,也可以不声明而直接使用变量,显式声明变量时每个变量都应使用As子句声明类型,否则该变量将被视为变体类型。DimX,YAsInteger表示x是变体类型变量,Y是整型变量。国家二级VB机试(数据类型及运算)模拟试卷第4套一、选择题(本题共32题,每题1.0分,共32分。)1、以下合法的VB变量名是A、_xB、2yC、a#bD、x_1_x标准答案:D知识点解析:变量是用一个名称来表示的,给变量命名时应遵循规则:名称只能由字母、数字和下划线组成;名称的第一个字符必须是英文字母,最后一个字符可以是类型说明符;名称的有效字符为255个;不能用VB的保留字作变量名,但变量名中可以包含保留字,如ConstA;变量名也不能是末尾带有类型说明符的保留字,如:Dim!是不合法的变量名;不区分字母的大小写。2、以下关于变量作用域的叙述中错误的是A、在窗体模块的声明部分声明的Private变量,其作用域是窗体内的所有过程B、在标准模块的声明部分声明的Private变量,其作用域是模块内的所有过程C、在窗体模块的声明部分声明的Pubilc变量,其作用域是本窗体的所有过程D、在标准模块的声明部分声明的Pubilc变量,其作用域是应用程序的所有过程标准答案:C知识点解析:根据变量的定义位置和定义关键字的不同,变量可以分为。以下3种类型:●局部(Local)变量:在过程(事件过程或通用过程)内定义的变量,其作用域为该变量所在的过程,定义时使用Dim、Static关键字;●模块(Module)变量:模块变量包括窗体变量和标准模块变量2种。其中,窗体变量可用于该窗体内的所有过程,其作用域为该变量所在的窗体;标准模块变量是在标准模块中定义的变量,变量的声明和使用与窗体模块中窗体变量类似。区别是标准模块是只含有程序代码的应用程序文件,其扩展名为.bas:●全局(Public)变量:全局变量也称为全程变量,在标准模块的声明部分声明。全局变量的作用域最大,可以在工程的每个模块、每个过程中使用。3、在某个事件过程中定义的变量是A、局部变量B、窗体级变量C、全局变量D、模块变量标准答案:A知识点解析:根据变量的定义位置和定义关键字的不同,变量可以分为局部(Local)变量、模块(Module)变量和全局(Public)变量3种类型:4、以下合法的VB变量名是A、_aB、yPrintC、a-bD、Type标准答案:B知识点解析:变量是用一个名称来表示的,给变量命名时应遵循规则:名称只能由字母、数字和下划线组成:名称的第一个字符必须是英文字母,最后一个字符可以是类型说明符;名称的有效字符为255个;不能用VB的保留字作变量名,但变量名中可以包含保留字,如ConstA;变量名也不能是末尾带有类型说明符的保留字,如Dim!是不合法的变量名;不区分字母的大小写。5、设在一个工程的窗体中有如下代码:PublicxAsIntegerPrivateSubForm_Load()DimyAsIntegerEndSub在该工程的标准模块的声明部分有代码:PublicaAsInteger:PrivatebAsInteger关于上述代码,以下叙述中错误的是A、变量x的作用域是整个工程B、变量Y的作用域是FormLoad过程C、变量a的作用域是整个工程D、变量b的作用域是整个标准模块标准答案:A知识点解析:根据变量的定义位置和定义关键字的不同,变量可以分为局部(Local)变量、模块(Module)变量和全局(Public)变量3种类型:6、以下不合法的VB变量名是A、filenameB、readC、_yD、e5标准答案:C知识点解析:变量是用一个名称来表示的,给变量命名时应遵循规则:名称只能由字母、数字和下划线组成:名称的第一个字符必须是英文字母,最后一个字符可以是类型说明符;名称的有效字符为255个;不能用VB的保留字作变量名,但变量名中可以包含保留字,如ConstA;变量名也不能是末尾带有类型说明符的保留字,如Dim!是不合法的变量名;不区分字母的大小写。7、以下关于变量作用域的叙述中,错误的是A、在标准模块声明部分用Public声明的变量的作用域为整个工程文件B、在标准模块声明部分用Pdvate声明的变量的作用域为该标准模块C、在窗体的声明部分不能用Private声明变量D、在过程中不能使用Public声明变量标准答案:C知识点解析:根据变量的定义位置和定义关键字的不同,变量可以分为局部(Local)变量、模块(Module)变量和全局(Public)变量3种类型:8、下列符号常量的声明中不合法的是A、ConstaAsSingle=3.5B、ConstaAsDouble=5+8C、ConstaAsInteger="25"D、Consta="OK"标准答案:C知识点解析:声明符号常量用来代替数值或字符串。一般格式为:Const常量名=表达式[,常量名=表达式】…,其中要求表达式的类型和常量的类型是相同或者相容的。“25”是一个字符串常量,无法赋值给整型符号常量a。9、在窗体模块的声明部分声明变量时,不能使用的关键字是A、DimB、PublicC、PrivateD、Static标准答案:D知识点解析:根据变量的定义位置和定义关键字的不同,变量可以分为局部(Local)变量、模块(Module)变量和全局(Public)变量3种类型:10、下面变量定义中错误的是A、PublicmodAsIntegerB、StaticbufC、DimchAsString*10D、Dima!(-5To-1)标准答案:A知识点解析:定义变量时需要使用As类型或者类型说明符来指明变量的数据类型,如果不指明则为隐式声明,该变量为变体型;mod是关键字表示求余运算,根据标识符命名规则不能作为变量名。11、如果要定义一个窗体级变量,定义变量语句的位置应该是A、在使用该变量的过程中B、在该窗体模块所有过程的前面C、在该窗体模块所有过程的后面D、在某个标准模块中标准答案:B知识点解析:根据变量的定义位置和定义关键字的不同,变量可以分为局部(Local)变量、模块(Module)变量和全局(Public)变量3种类型:12、下列说法中,错误的是A、变量名长度不能超过255个字符B、变量名的第一个字符可以是字母或数字C、变量名只能由字母、数字和下划线组成D、变量名不能使用保留字标准答案:B知识点解析:变量是用一个名称来表示的,给变量命名时应遵循规则:名称只能由字母、数字和下划线组成;名称的第一个字符必须是英文字母,最后一个字符可以是类型说明符;名称的有效字符为255个;不能用VB的保留字作变量名,但变量名中可以包含保留字,如ConstA;变量名也不能是末尾带有类型说明符的保留字,如Dim!是不合法的变量名;不区分字母的大小写。13、在标准模块中,将a定义为全局整型变量的语句是A、StaticaAsIntegerB、DimaAsIntegerC、PrivateaAsIntegerD、PublicaAsInteger标准答案:D知识点解析:根据变量的定义位置和定义关键字的不同,变量可以分为局部(Local)变量、模块(Module)变量和全局(Public)变量3种类型:14、下列说法中,错误的是A、变量名长度不能超过127个字符B、变量名的第一个字符必须是字母C、变量名不能使用保留字D、变量名只能由字母、数字和下划线组成标准答案:A知识点解析:变量是用一个名称来表示的,给变量命名规则同38题。15、下面能够将某个变量声明为局部变量的是A、在窗体模块的声明部分,用关键字Static声明这个变量B、在窗体模块的声明部分,用关键字Dim声明这个变量C、在需要使用这个变量的过程中,用关键字Private声明这个变量D、在需要使用这个变量的过程中,用关键字Public声明这个变量标准答案:C知识点解析:根据变量的定义位置和定义关键字的不同,变量可以分为局部(Local)变量、模块(Module)变量和全局(Public)变量3种类型:16、有如下过程代码:Subvatdim()StaticnumaAsIntegerDimnumbAsIntegernuma=numa+2:numb=numb+1:printnuma;numbEndSub连续3次调用var_dim过程,第3次调用时的输出是A、21B、23C、61D、63标准答案:C知识点解析:Static语句在过程级别中使用,用于声明变量并分配存储空间,在整个代码运行期间都能保留使用Static语句声明的变量的值。本题中,当第1次调用过程时,静态变量numa的初值为0、普通变量numb的初值为0,执行循环语句后,静态变量numa的值应为2、普通变量numb的值为1;当第2次调用过程时,静态变量numa的初值为2、普通变量numb的初值为0,执行循环语句后,静态变量numa的值应为4、普通变量numb的值为1;当第3次调用过程时,静态变量numa的初值为4、普通变量numb的初值为0,执行循环语句后,静态变量nulna的值应为6、普通变量numb的值为1。17、标准模块中有如下程序代码:PublicxAsInteger,yAsIntegerSubvarpub()x=10:y=20EndSub在窗体上有1个命令按钮,并有如下事件过程:PrivateSubCommand1_Click()DimxAsIntegerCallvarpubx=x+100:y=y+100:Printx;yEndSub运行程序后单击命令按钮,窗体上显示的是A、100100B、100120C、110100D、110120标准答案:B知识点解析:在标准模块用Public关键字声明的全局变量,其作用域最大,可以在工程的每个模块、每个过程中使用。但当不同作用范围的变量重名时,有效范围小的变量会屏蔽有效范围大的变量。当一个全局变量与一个过程级变量重名时,当在本过程中直接使用这个变量名时,被认为是指局部变量。如果要在这个过程中使用同名的全局变量,要使用模块名来修饰变量名。在本题的事件过程中,由于变量x被声明为过程级变量,其初始值为0,调用过程vatpub不会改变其值,而变量y为标准模块中声明的全局变量,调用过程varpub后其值为20。故最后输出结果为100和120。18、窗体上有一个Text1文本框,一个Command1命令按钮,并有以下程序:PrivateSubCommand1click()DimnIfText1.Text<>"123456"Thenn=n+1:Print”口令输入错误"&n&"次"EndIfEndSub希望程序运行时得到左图所示的效果,即:输入口令,单击“确认口令”命令按钮,若输入的口令不是“123456”,则在窗体上显示输入错误口令的次数。但上而的程序实际显示的是右图所示的效果,程序需要修改。下面修改方案中正确的是A、在Dimn语句的下面添加一句:n=0B、把Print"口令输入错误"&n&"次"改为Print"口令输入错误"+n+"次"C、把Print"口令输入错误"&n&"次”改为Print"口令输入错误"&Str(n)&"次"D、把Dimn改为Staticn标准答案:D知识点解析:本题中题干部分的程序之所以会产生不合要求的结果,其原因是在单击事件中的第一条语句为Dimn,这样的话每次单击按钮时触发此事件,都将会执行这条语句,重新定义一个局部变量n并设其默认初值为0。Static语句在过程级别中使用,用于声明变量并分配存储空间,在整个代码运行期间都能保留使用Static语句声明的变量的值,因此此处应该使用Staticn来声明变量。19、工程文件中包含一个模块文件和一个窗体文件。模块文件的程序代码是:PublicxAsIntegerPrivateyAsInteger窗体文件的程序代码是:DimaAsIntegerPrivateSubCommand1_Click()PrivateSubForm_Load()a=a+5:b=b+5:x=x+5:y=y+5DimbAsIntegerPrinta;b;x;ya=2:b=3::x=10:y=20EndSubEndSub运行程序,单击窗体上的命令按钮,则在窗体上显示的是A、55155B、751525C、78155D、75155标准答案:D知识点解析:本题中在模块文件中声明的x是全局变量,y是模块变量;在窗体中声明的a是模块级变量;在窗体的Load事件中声明了局部变量b,而且隐式声明了局部变量y;在按钮的Click事件中使用到的a是模块级变量,其值为2:b是隐式声明的局部变量,其初值为0;x是全局变量,其值为10;y也是隐式声明的局部变量,其初值为5。20、编写如下程序:PrivateSubCommand1_Click()Functionproc(iAsInteger)DimmAsInteger,nAsIntegerDimaAsInteger,StaticbAsIntegern=2a=a+1:b=b+1Form=1To3proc=a*b+iPrintproc(n);EndFunctionNextmEndSub程序运行后,单击命令按钮Command1,输出结果为A、333B、345C、356D、123标准答案:B知识点解析:使用Dim关键字定义的是动态局部变量,过程执行结束后即被释放:使用Static关键字定义的是静态局部变量,过程执行结束后仍然保留。本题中函数proc中的局部变量a是动态变量,b是静态变量。即每次函数调用后b的值会保留。先后三次调用pmc(n)方法,依次输出3、4、5。21、窗体上有名称为Command1的命令按钮,名称分别为Label1、Label2、Label3的标签。编写如下程序:PrivatexAsIntegerPrivateSubCommand1_Click()StaticyAsIntegerDimzAsIntegern=5:z=z+n:y=y+n:x=x+yLabel1=x:Label2=y:Label3=zEndSub运行程序,连续3次单击命令按钮后,3个标签中分别显示的是A、555B、15105C、151515D、30155标准答案:D知识点解析:Static语句在过程级别中使用,用于声明变量并分配存储空间,在整个代码运行期间都能保留使用Static语句声明的变量的值。在窗体的声明段用Private声明的变量为模块级变量,其作用域为整个窗体。本题中,当第1次单击时,静态变量y的初值为0,执行调用语句后,静态变量y的值应为5,模块级变量x的值为
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025-2030年中国镀硅钢卷行业运行状况及发展前景分析报告
- 2025-2030年中国锂电池铝塑膜行业运营状况及发展前景分析报告
- 2025-2030年中国铀资源产业运行动态及发展趋势分析报告
- 2025-2030年中国轻钢结构行业十三五规划及发展策略分析报告
- 2025-2030年中国航空保险行业市场深度调查及投资前景预测报告
- 2025-2030年中国羊毛衫市场十三五规划及发展趋势分析报告
- 2025-2030年中国稀释剂市场运行状况及前景趋势分析报告
- 2025山西省安全员《C证》考试题库
- 河北石油职业技术大学《舞弊审计》2023-2024学年第二学期期末试卷
- 2025年重庆市建筑安全员考试题库
- 别让心态毁了你:受益一生的情绪掌控法
- 电梯控制技术PPT完整全套教学课件
- 甲状腺旁腺分泌的激素及功能
- 中央财政成品油价格调整对渔业补助资金项目实施方案
- PFMEA模板完整版文档
- 论生产安全对于家庭的重要性
- 风力发电变桨系统外文翻译
- 教学能力比赛决赛 《英语》教案
- ECMO IABP完整版可编辑
- 离婚纠纷证据清单
- 【高考作文指导】用思辨来写现象类作文(共39张PPT)
评论
0/150
提交评论