内容正文:
《Visual Basic程序设计(第6版)》电子工业出版社
项目四 函数与表达式
考试时间:90分钟 满分:100分
姓名 班级 学号
1、 单项选择题(本题共20小题,每题3分,共60分)
1. 函数String(n, "str")的功能是( )。
A.把数值型数据转换为字符串
B.返回由n个字符组成的字符串
C.从字符串中取出n个字符
D.从字符串中第n个字符的位置开始取子字符串
2. 语句Print Abs(-6^2)+Int(-6^2)的输出结果是( )。
A.0
B.1
C.-1
D.-72
3.表达式4 + 5 \ 6 * 7 / 8 Mod 9 的值是( )
A.4
B. 5
C. 6
D. 7
4.在VB中,三个逻辑运算符NOT,AND,OR在运算过程中,优先级高到低的次序是( )。
A.AND->NOT->OR
B.NOT->AND->OR
C.OR->NOT->AND
D.NOT->OR->AND
5.下面程序运行后,输出的结果为( )
Private Sub Command1_Click( )
A$=”Beijing”
B$=”dalian”
C$=”shanghai”
C$=Instr(Left(A$,2)+Right$(B$,2),C$)
Print C$
End Sub
A.10
B.0
C.8
D.6
6、表达式Len(“123程序设计ABC”)的值为( )
A.10
B.14
C.20
D.17
7、运算符 \、/、MOD、*四个算术运算符中,优先级别最低的是( )
A. \
B./
C.MOD
D. 、
8、数学关系3<=x<10表示成正确的VB表达式为( )
A.3<=X<10
B.3<=X AND X<10
C.X>=3 OR X<10
D.3<=X AND <10
9、赋值语句:A=123 & MID(“1234356”,3,2) 执行后,A变量的值为( )
A.“12334”
B.123
C.12334
D.157
10、表达式 16/4-2^5*8/4 Mod 5\2 的值为( )。
A.14
B.4
C.20
D.2
11、可以同时删除字符串前导和尾部空白的函数是( )。
A.Ltrim
B.Rtrim
C.Trim
D.Mid
12、下列表达式中,结果为True的是( )
A."abc">"abd"
B.123>"123
C.2023-10-1>2023-9-1
D. False >True
13、Print DateAdd(“m”,1,#1/30/2000#)语句显示的结果是( )
A.00-2-29
B.00-2-28
C.00-2-30
D.00-1-31
14、以下程序的输出结果是( )。
Private Sub Command1_Click()
a="ABCD"
b="efgh"
c=Lcase(a)
d=Ucase(b)
Print c+d
End Sub
A.abcdEFGH
B.abcdefgh
C.ABCDefgh
D.ABCDEFGH
15、以下关于 VB 运算符优先级的说法,正确的是( )
A. 关系运算符优先级高于算术运算符
B. 逻辑运算符优先级高于关系运算符
C. 算术运算符优先级高于关系运算符
D. 所有运算符优先级相同
16、表达式2*3^2+4*2/2+3^2的值是( )。
A.30
B.31
C.49
D.48
17、下列Visual Basic函数中,计算结果为字符串型的是( )。
A. InStr
B. Val
C.Trim
D. Sgn
18、表示“x+y小于10且x-y大于或等于6”的Visual Basic表达式是( )。
A. x+y<10 || x-y≥6
B. x+y<10 && x-y≥6
C. x+y<10 Or x-y>=6
D. x+y<10 And x-y>=6
19、执行x$=String(6, "124abc")后,x的值是( )。
A.124abc
B.111111
C.124
D.abc
20、从键盘上输入两个字符串,分别保存在变量str1、str2中。确定第二个字符串在第一个字符串中起始位置的函数是( )。
A.Left
B.Mid
C.String
D.Instr
2、 填空题(本题共10小题,每题2分,共20分)
1. A=7,B=3,C=4,则表达式A MOD 3 +B^3/C\5的值为__________。
2、产生100~200之间(含100和200)的随机整数的表达式是:___________。
3、与数学表达式cos3(2π)相对应的Visual Basic表达式是________。
4、 在VB中,1234,1234& ,1.2346E+5,1.2346D+5四个常数分别表示_______类型,_______类型,_______类型,_______类型。
5、 表示X是5的倍数或是9的倍数的表达式为_______。
6、 已知A=3.5,B=5.0,C=2.5,D=True 则表达式:A>=0 AND A+C>B+3 OR NOT D的值为______。
7、设a=3,b=5,则表达式(a>b)Or(b>0)的值为__________。
8、已知 x = 12.78,对 x 四舍五入保留 1 位小数的函数为:__________。
9、表达式”ABC”>”Abc”的值为 __________。
10、判断 a 是偶数且 b 是奇数的数学表达式为__________。
3、 程序填空题(本题共2小题,每题10分,共20分)
1、 下列程序实现的功能为:窗体中有一个文本框 Text1(输入任意字符串),单击命令按钮后,输出该字符串的长度、首字符、转换为大写后的结果。请补充完整代码。
Private Sub Command1_Click()
Dim s As String
s = Text1.Text
Print "字符串长度:"; __(1)_____
Print "首字符:"; __(2)_____
Print "大写形式:"; __(3)_____
End Sub
2、 下列程序实现的功能为:单击命令按钮后,输出当前系统的年份、月份、当前日期加 10 天的结果、当前时间的小时数。请补充完整代码。
Private Sub Command1_Click()
Dim nowDate As Date
nowDate = Date
Dim nowTime As Date
nowTime = Time
Print "当前年份:"; _____(1)_______
Print "当前月份:"; ____(2)________
Print "10天后日期:"; ___(3)________
Print "当前小时:"; _____(4)_______
End Sub
原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
学科网(北京)股份有限公司
$
《Visual Basic程序设计(第6版)》电子工业出版社
项目四 函数与表达式
考试时间:90分钟 满分:100分
姓名 班级 学号
1、 单项选择题(本题共20小题,每题3分,共60分)
1. 函数String(n, "str")的功能是( )。
A.把数值型数据转换为字符串
B.返回由n个字符组成的字符串
C.从字符串中取出n个字符
D.从字符串中第n个字符的位置开始取子字符串
【答案】 B
【解析】String(n, character),作用是返回一个由 n 个指定字符(character)重复组成的字符串。
2. 语句Print Abs(-6^2)+Int(-6^2)的输出结果是( )。
A.0
B.1
C.-1
D.-72
【答案】A
【解析】 Abs 是绝对值函数,Int 是向下取整函数。
3.表达式4 + 5 \ 6 * 7 / 8 Mod 9 的值是( )
A.4
B. 5
C. 6
D. 7
【答案】B
【解析】VB 算术运算优先级为 *// > \ > Mod > +/-;\ 是整数除法,计算前会先取整,Mod 是取余数。
4.在VB中,三个逻辑运算符NOT,AND,OR在运算过程中,优先级高到低的次序是( )。
A.AND->NOT->OR
B.NOT->AND->OR
C.OR->NOT->AND
D.NOT->OR->AND
【答案】B
【解析】优先级为非(NOT)> 与(AND)> 或(OR)。
5.下面程序运行后,输出的结果为( )
Private Sub Command1_Click( )
A$=”Beijing”
B$=”dalian”
C$=”shanghai”
C$=Instr(Left(A$,2)+Right$(B$,2),C$)
Print C$
End Sub
A.10
B.0
C.8
D.6
【答案】B
【解析】Left(字符串, n):截取字符串左侧的 n 个字符;Right(字符串, n):截取字符串右侧的 n 个字符;Instr(字符串1, 字符串2):查找字符串 2 在字符串 1 中首次出现的位置。
6、表达式Len(“123程序设计ABC”)的值为( )
A.10
B.14
C.20
D.17
【答案】A
【解析】Len函数都会按 “单个字符” 计数,每个字符算 1 个长度。
7、运算符 \、/、MOD、*四个算术运算符中,优先级别最低的是( )
A. \
B./
C.MOD
D. 、
【答案】C
【解析】MOD(取模):优先级低于*//和\,是四个中最低的。
8、数学关系3<=x<10表示成正确的VB表达式为( )
A.3<=X<10
B.3<=X AND X<10
C.X>=3 OR X<10
D.3<=X AND <10
【答案】B
【解析】拆分为 “X 大于等于 3” 且 “X 小于 10”,完全符合 3<=x<10 的数学含义,AND 表示两个条件必须同时成立。
9、赋值语句:A=123 & MID(“1234356”,3,2) 执行后,A变量的值为( )
A.“12334”
B.123
C.12334
D.157
【答案】A
【解析】Mid("1234356",3,2) 截取结果为"34";& 是字符串拼接符,123会被转为"123",拼接后得到"12334"。
10、表达式 16/4-2^5*8/4 Mod 5\2 的值为( )。
A.14
B.4
C.20
D.2
【答案】B
【解析】先算乘方,再算乘除,接着算整数除和取模,最后算减法。
11、可以同时删除字符串前导和尾部空白的函数是( )。
A.Ltrim
B.Rtrim
C.Trim
D.Mid
【答案】C
【解析】Trim同时删除字符串前导和尾部的空白字符(空格),不影响字符串中间的空白。
12、下列表达式中,结果为True的是( )
A."abc">"abd"
B.123>"123
C.2023-10-1>2023-9-1
D. False >True
【答案】C
【解析】在VB中,日期类型可以直接比较大小2023-10-1晚于2023-9-1,所以该比较结果为 True。字符串比较是按字符的ASCII 码值依次比较,"abc"<"abd";不同数据类型比较会出错;在布尔值比较中,False为0,True为1,False<True。
13、Print DateAdd(“m”,1,#1/30/2000#)语句显示的结果是( )
A.00-2-29
B.00-2-28
C.00-2-30
D.00-1-31
【答案】A
【解析】DateAdd("m",1,日期)加 1 个月时,若目标月份无对应日期,取该月最后一天;2000 年是闰年,2 月最后一天是 29 日。
14、以下程序的输出结果是( )。
Private Sub Command1_Click()
a="ABCD"
b="efgh"
c=Lcase(a)
d=Ucase(b)
Print c+d
End Sub
A.abcdEFGH
B.abcdefgh
C.ABCDefgh
D.ABCDEFGH
【答案】A
【解析】Lcase (字符串):将字符串中所有大写字母转换为小写,非字母字符不变,Ucase (字符串):将字符串中所有小写字母转换为大写,非字母字符不变,+ 字符串拼接:当+两边都是字符串时,作用是拼接两个字符串。
15、以下关于 VB 运算符优先级的说法,正确的是( )
A. 关系运算符优先级高于算术运算符
B. 逻辑运算符优先级高于关系运算符
C. 算术运算符优先级高于关系运算符
D. 所有运算符优先级相同
【答案】C
【解析】VB 运算符优先级核心规则 ——算术运算符 > 关系运算符 > 逻辑运算符。
16、表达式2*3^2+4*2/2+3^2的值是( )。
A.30
B.31
C.49
D.48
【答案】B
【解析】根据VB中算术运算符的优先级顺序计算。先计算^,即2*9+4*2/2+9;再计算*/,即18+4+9;最后计算+,结果为31。
17、下列Visual Basic函数中,计算结果为字符串型的是( )。
A. InStr
B. Val
C.Trim
D. Sgn
【答案】C
【解析】InStr功能:查找一个字符串在另一个字符串中首次出现的位置。Val功能:将数字格式的字符串转换为数值。Trim功能:去除字符串首尾的空格,返回值类型:字符串型(String)。Sgn功能:返回数值的符号,返回值类型:数值型。
18、表示“x+y小于10且x-y大于或等于6”的Visual Basic表达式是( )。
A. x+y<10 || x-y≥6
B. x+y<10 && x-y≥6
C. x+y<10 Or x-y>=6
D. x+y<10 And x-y>=6
【答案】D
【解析】在Visual Basic中表示表达式“x+y小于10且x-y大于或等于6”可以写成: x+y<10 And x-y>=6。
19、执行x$=String(6, "124abc")后,x的值是( )。
A.124abc
B.111111
C.124
D.abc
【答案】B
【解析】String(次数, 字符/字符码)第一个参数:指定要生成的字符串长度(次数);第二个参数:如果是字符串,则只取该字符串的第一个字符;如果是数字,则视为 ASCII 码,对应字符。生成由 “第二个参数的第一个字符” 重复 “第一个参数次数” 组成的字符串。
20、从键盘上输入两个字符串,分别保存在变量str1、str2中。确定第二个字符串在第一个字符串中起始位置的函数是( )。
A.Left
B.Mid
C.String
D.Instr
【答案】D
【解析】Instr功能:查找第二个字符串在第一个字符串中首次出现的起始位置,若找不到则返回 0。
2、 填空题(本题共10小题,每题2分,共20分)
1. A=7,B=3,C=4,则表达式A MOD 3 +B^3/C\5的值为__________。
【答案】2
【解析】先算乘方、再算浮点数除、接着算整数除和取模,最后算加法。
2、产生100~200之间(含100和200)的随机整数的表达式是:___________。
【答案】Int(Rnd*101+100)
【解析】 Int(Rnd() * (上限-下限+1) + 下限),可适配任意闭区间的随机整数生成。
3、与数学表达式cos3(2π)相对应的Visual Basic表达式是________。
【答案】cos(2*3.14)^3
【解析】先算2π,再算余弦,最后算 3 次方。VB 中乘方用 ^ 表示,x³ 写作 x ^ 3。
4、 在VB中,1234,1234& ,1.2346E+5,1.2346D+5四个常数分别表示_______类型,_______类型,_______类型,_______类型。
【答案】 整型;长整型;单精度型;双精度型
【解析】 1234 → 整型(Integer);1234& → 长整型(Long);1.2346E+5 → 单精度型(Single);1.2346D+5 → 双精度型(Double)。
5、 表示X是5的倍数或是9的倍数的表达式为_______。
【答案】 X Mod 5 = 0 Or X Mod 9 = 0
【解析】 Mod 求余数,余数为 0 表示整除(是倍数);Or 表示 “或逻辑”,满足任一条件即成立。
6、 已知A=3.5,B=5.0,C=2.5,D=True 则表达式:A>=0 AND A+C>B+3 OR NOT D的值为______。
【答案】False
【解析】算术运算→关系运算→NOT→AND→OR;3.5>=0 AND 6>8 OR NOT True → True AND False OR False → False OR False = False。
7、设a=3,b=5,则表达式(a>b)Or(b>0)的值为__________。
【答案】 True
【解析】关系运算优先级高于逻辑运算,先算a>b和b>0,再算Or。
8、已知 x = 12.78,对 x 四舍五入保留 1 位小数的函数为:__________。
【答案】 Round(x, 1)
【解析】Round是 VB 中的四舍五入函数,Round(x, 1)表示:对数值x进行四舍五入,保留 1 位小数。
9、表达式”ABC”>”Abc”的值为 __________。
【答案】 False
【解析】 大写字母B(66)< 小写字母b(98),因此 "ABC">"Abc" 结果为False。
10、判断 a 是偶数且 b 是奇数的数学表达式为__________。
【答案】(a Mod 2 = 0) And (b Mod 2 = 1)
【解析】 Mod是 VB 的取模运算符,作用是计算两个数相除后的余数,And的规则:只有两边的条件都为True时,整体结果才为True;只要有一个为False,整体就是False。
3、 程序填空题(本题共2小题,每题10分,共20分)
1、 下列程序实现的功能为:窗体中有一个文本框 Text1(输入任意字符串),单击命令按钮后,输出该字符串的长度、首字符、转换为大写后的结果。请补充完整代码。
Private Sub Command1_Click()
Dim s As String
s = Text1.Text
Print "字符串长度:"; __(1)_____
Print "首字符:"; __(2)_____
Print "大写形式:"; __(3)_____
End Sub
【答案】
(1)Len(s)
(2)Mid(s, 1, 1)
(3)UCase(s)
【解析】 Len(s):VB 核心字符串函数,返回字符串的字符个数(长度);Mid(s, 1, 1):截取字符串s从第 1 位开始的 1 个字符(即首字符);UCase(s):将字符串所有小写字母转换为大写,非字母字符不变。
2、 下列程序实现的功能为:单击命令按钮后,输出当前系统的年份、月份、当前日期加 10 天的结果、当前时间的小时数。请补充完整代码。
Private Sub Command1_Click()
Dim nowDate As Date
nowDate = Date
Dim nowTime As Date
nowTime = Time
Print "当前年份:"; _____(1)_______
Print "当前月份:"; ____(2)________
Print "10天后日期:"; ___(3)________
Print "当前小时:"; _____(4)_______
End Sub
【答案】
(1)Year(nowDate)
(2)Month(nowDate)
(3)nowDate + 10
(4)Hour(nowTime)
【解析】 Year(nowDate):日期函数,提取日期中的年份;Month(nowDate):提取日期中的月份(1-12);nowDate + 10:VB 中日期可以直接与整数相加(整数代表天数),实现日期偏移;Hour(nowTime):时间函数,提取时间中的小时数(0-23)。
原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
学科网(北京)股份有限公司
$