内容正文:
专题6 VB语言及算法基础
1.常见标准函数的功能
函数名 功能 应用举例 函数返回值
Abs(x) 取x的________ Abs(-6.3) ________
Int(x) 求不大于x的__________ Int(-6.3) ______
Sqr(x) 求x的________ Sqr(9) ____
Rnd() 产生一个_______之间小数 Rnd() ________________
Str(x) 将数值x转换成______ Str(123) ________
绝对值
6.3
最大整数
-7
平方根
3
[0,1)
[0,1)之间小数
文本
”123”
2
Val(s) 将文本s转换成______ Val(”63”) ______
Len(s) 求字符串s的______ Len(”Abc”) ____
Mid(s,i,n) 在字符串s第i个位置开始____个字符 Mid(”I am a boy”,3,2) _______
Asc(s) 求字符串s的十进制______码值 Asc(”A”) ______
Chr(x) 将ASCII值转换成______ Chr(97) ________
数值
长度
63
3
n
”am”
ASCII
65
字母
”a”
2.算术类基本运算符及优先级按从高到低排列为^(乘幂)→-(取负)→*、____和\→________→+—
3.关系类运算符 =、>、<、______、>=、<=
4.逻辑类运算符 Not→________→Or
5.基本运算的优先级
______运算符→______运算符→______运算符
/
Mod
<>
And
算术
关系
逻辑
B
考点一 对于标准函数的理解
【例1】 用UltraEdit观察字母”A”的内码为41H,若已知大写字母S在26个英文字母表中位置是t(1≤t≤26),则下列能表示该英语字母的VB表达式是( )
A.Chr(t) B.Chr(Asc(”A”)+t-1)
C.Chr(41+t) D.Chr(65+Int(t*Rnd))
解析 本题考核对函数的理解。字母”A”的内码为41H,转换成十进制为65D。因此选项B不正确。大写字母S在26个英文字母表中位置为t,因此可以表达为Chr(64+t),用A的ASCII码值代入,应为Chr(Asc(”A”)+t-1)。
5
A
【变式1】 下列VB表达式的值为”2020”的是( )
A.Mid(”Hello2020!”,6,4) B.Abs(Int(-2018.8)-1)
C.Int(Rnd*2020+1) D.”2018”+”2”
解析 A选项取出字符串,B选项结果的类型是整型,C选项产生[1,2020]范围内的随机整数。D选项进行连接,值为“20182”。
6
C
考点二 运算符的优先级
【例2】 下列VB表达式中,值最大的是( )
A.Val(Mid(”3.1415926”,6,2)) B.Int((Rnd-Rnd+1)/2)*100
C.6790 Mod 1000\10 D.Int(Rnd*80)+10
解析 本题考核的知识点是VB函数和表达式的知识。选项A的值为59,表达式(Rnd-Rnd+1)/2的范围[0,2)/2,因此选项B的值为0。选项C中先整除再取模,值为90.选项D中属于[10,89]之间的整数。
A
【变式2】 VB表达式 Int(Rnd*10)+54\9/3的值可能是( )
A.18 B.12 C.28 D.11
解析 Int(Rnd*10)的值范围为0至9,54\9/3的值为18(/优先级高于\),故答案是A。
【变式3】 (2021·1月浙江选考)VB表达式3+9 Mod 3*2的值是( )
A.0 B.3 C.6 D.9
解析 考查了表达式的识读。优先级“*”大于Mod,先计算“*”,再计算Mod。
A
D
考点三 逻辑表达式的值
【例3】 若x是整型变量,下列选项中,与表达式Not(x>=5 And x<9)等价的是( )
A.x<5 And x>=9 B.Not x>5 And Not x<9
C.x>=5 Or x<9 D.x<5 Or x>=9
解析 本题考查关系表达式。通过在数轴上画出x>=5 And x<9 区域(左图),取反后得到右图。
容易得知答案选D。此题也可以根据通用技术数字电路中“德·摩根定律”进行解答。
D
【变式4】 与表达式Not x<0 Or y Mod 2=0具有相同功能的是( )
A.x>=0 And y Mod 2=1 B.x>=0 And y\2=0
C.x>0 Or y/2=Int(y/2) D.