2019年春招Vb知识点及试题复习
一、程序及算法:
1. 计算机程序设计语言可分为三大类:汇编语言和高级语言和 ( B )。
[A] 翻译语言 [B]机器语言 [C] 自然语言 [D] 通用语言 2. 下列计算机程序设计语言中都属于高级语言一组的是( B )
[A] 汇编语言、Visual Basic [B] Pascal、Visual Basic [C] 机器语言、Pascal [D] 汇编语言、Visual Basic
3. 下列关于程序与软件的叙述中不正确的是( A )
[A] 程序是指用于实现一定计算任务的一组计算机指令和有关数据 [B] 程序就是软件
[C] 程序、数据与相关文档资料构成软件 [D] 软件一般都需要不断完善或升级
4. 为解决一个问题而采取的方法和有限步骤称为( B)。
[A] 程序 [B] 算法 [C] 程序设计 [D] 解题 5. 下列关于算法的叙述不正确的是(B )。
[A] 算法具有输入、输出、确定性、可行性、有限性等基本特征 [B] 解决一个问题的算法只有一种 [C] 算法是解决问题的有序步骤
[D] 描述算法的方法主要有自然语言描述、框图法、伪代码 6. 用流程图描述算法中表示“输入输出”的图形符号是(B )
A. B.
C. D. 7. 用流程图描述算法中,图形符号表示的功能是(B )A.开始/结束 B.条件判断 C.处理 D.输入/输出
8. 下列属于结构化程序的三种基本结构的是顺序结构、循环结构和(D A.模块结构 B.情况结构 C.流程结构 D.选择结构 9. 下列关于算法的叙述,正确的是( A )
A.有穷性是算法的基本特征之一 B.可行性不属于算法基本特征 C.算法对程序设计没有任何作用 D.解决一个问题的算法只有一种
考查知识点:
1
) 。
1、用计算机解决问题的一般过程:提出问题 分析问题 设计算法 编写程序
调试运行,
这个过程中,设计算法是核心。 2.算法:
概念:算法是解决问题的步骤和方法
描述:描述算法的三种方法主要有自然语言描述、流程图法、伪代码
特征:算法具有有穷性、确定性、零个或多个输入、至少一个输出、可行性等基本特征 3、结构化程序的三种基本结构的是: 顺序结构、选择结构(分支结构)、循环结构
(1) 顺序结构. 见图1 在这个结构中的各块是只能顺序执行的.
(3)循环结构.见图3
(2) 判断选择结构.见图2
根据给定的条件是否满足执行A块或B块.
表示的结构称为”直到型”循环,它的含义是:执行A块直到满足给定的条件为止(满足了条件就不再执行A块).
图1
图2
图3
4、计算机程序设计语言的产生、发展可分为三大类:低级语言(机器语言、汇编语言)和高级语言。
机器语言:20世纪40年代产生,由二进制“0”和“1”组成机器指令。所有的高级语言最后都要编译成机器语言让计算机执行。
汇编语言:20世纪50年中期代产生,用一种类似英语缩写的单词代替复杂的二进制编码来编写程序的语言,每一条汇编语言对应机器语言中的一条指令。汇编语言写的程序需要翻译成机器语言,计算机才能执行。
高级语言:20世纪60年中期代产生,如C/C++/C#,PASCAL,FORTRAN,JAVA,BASIC 二、常量:
1. 在VB语言中,下列数据中合法的字符型常量是 (D)
A.”123456” B.’1234.56’ C.12345A D.’A12345’ 2. 下列各组声明中用于正确定义常量的是。(B)
[A] Dim PI As Single=3.14 [B] Const Pi As Single=3.14 [C] Dim S As Integer [D] Const Pi As Integer=3.14 知识点:
2
常量:不变的量,常量有如下几种常见类型:
数值常量(包括整型、长整型、实数型): 123(整型)、1233.0(实数型)、-989990(长整型)、-678.78
字符常量(用英文双引号“”):“姓名”、“CHINA” 日期常量(用英文#):#2013-12-12# 逻辑型常量: TRUE 、FALSE
常量定义: Const Pi As Single=3.14159 (定义常量PI为实数且值为3.14159)
变量数据类型:
变量数据类型与常量一致,说明如下: 一、数据类型概述
1、整数型 :整数型是指不带小数点和指数符号的整数。按表示范围整数型分为:整型、长整型
(1)整型(Integer): 取值范围:-32768 ~ +32767
例如:15,-345,654都是整数型, 而45678则会发生溢出错误,需要定义成LONG。 (2)长整型(Long):取值范围:-2147483648 ~ +2147483647 例如:123456,45678&都是长整数型。
而如果数字大小超过长整型数的范围,则要定义成single(实型数) 2、实数型(single-浮点数或实型数):实数型数据是指带有小数部分的数。
注意:数12和数12.0对计算机来说是不同的,前者是整数,后者是实数,它们的区别是计算的精度不一样
(1)单精度数(Single,类型符) :
在计算机程序里面不能有上标下标的写法,所以乘幂采用的是一种称为科学计数法的表达方法,这里用E或者e表示10的次方(E/e大小写都可以) 比如:1.401298E-45表示1.401298的10的负45次方 (2) 双精度数(Double,类型符)
比如17.88D5,表示它是一个双精度数,表示17.88乘以10的5次方 , 这里用D来表示10的次方 3、 日期型(Date)
用#括起来放置日期和时间,允许用各种表示日期和时间的格式。
日期可以用“/”、 “-”分隔开,可以是年、月、日,也可以是月、日、年的顺序。 例: #09/10/2000# 或 #2000-09-12# 五、 逻辑型(Boolean)
逻辑型数据只有两个可能的值: True(真)、False(假) 例如: 5>3 值为 ture 5<3 值为 false 六、字符串( String)
字符串是一个字符序列,必须用英文双引号 “ ”括起来
3
例如:”正确” “good” 二、变量及定义: 考查知识点: 变量名及变量定义:
1、 变量名:字母开头,后面跟上字母、数字、下划线、其它符号,VB中的保留字如IF 、
DIM、-、=等到不能用。 六、字符串( String)
字符串是一个字符序列,必须用英文双引号 “ ”括起来 例如:”正确” “good” 定义字符型变量: Dim a as string a= ”李小双”
1. 下列运算结果中,值最大的是。
[A] 6 \\ 4 [B] 6 mod 3 [C] 6 / 4 [D] 6 mod 4
b24ac2a 在VB中正确的表示方法是【16】2. 数学表达式 。
A. (b*b-4*a*c)/2a B. (b*b-4*a*c)/2*a
C. (b*b-4*a*c)/2/a D. (b*b-4*a*c)/(2/a)
3. 在VB语言中,下列表达式中合法的表达式是
2xyxyxyxy A. B. C. D.
4. 下列中求绝对值的函数是 。
[A] INT [B] SQR [C] MOD [D]ABS 5. 在Visual Basic中,函数Int(6.8)返回的值是 A.6 B.7 C.8.6 D.6.8
6. 在Visual Basic中,表达式abs(-9.8)的返回值为 A.1 B.9.8 C.3 D.9
5x4y27zx7. 代数式对应的Visual Basic表达式是 A.(5x-4*y)/(7z+x*x) B.(5*x-4*y)/(7*z+x*x) C.5*x-4*y/7z+x*x D.(5x-4*y)/7z+x*x
8. 下列能正确表示“x,y全是奇数”的逻辑表达式是 。 [A](x+y)mod 2=1 [B] x mod 2=1 and y mod 2=1 [C] x mod 2=0 and y mod 2=0 [D](x+y)mod 2=0
4
9. 下列能表示-1 11. 若a=1,b=0,则下列逻辑表达式值为True的是 A.a+b<>1 B.a=0 or b=1 C.a<>1 and b=0 D.(a=0 or b=0 ) And a*b=0 12. 在Visual Basic中,表达式 3 * 7 Mod 5 的值是 A.4 B.1 C.2 D.3 13. 已知a=7,b=8,c=15,下列逻辑表达式的值为\"假\"的是 A.b>a and a+b=c B.a > c and c < b C.b > a or a > c D.not a> b 14. 在Visual Basic中,\"a大于b且a小于c\" 的正确表达式是 A.c>a>b B.a>b not a 例: 20 + 10 mod 3 – 15 *2\\ 10 / 2= 15 2、 关系运算符:>(大于) , <(小于), >=(大于等于), <=(小于等于), < > (不等于) 3、 逻辑运算符:not(非) , and(与) , or(或) 使用逻辑运算符:当有两个以上的关系运算时使用,如数学中的1 表达式:用运算符将常量、变量、函数等连接起来的式子 例如:a+b 2*a-8 函数:绝对值函数:abs(x) abs(-5)=5 平方根函数:sqr(x) sqr( 9 )=3 取整函数:int ( x ) int( 5.6)=5 int(-5.6)= - 6 四、三种结构及语句 5 知识点: 赋值语句:变量名=表达式, 作用:将右边的表达式的值赋值给左边的变量,=左边只能是变量名, 输入语句:PRINT 表达式 作用:计算表达式的值并将表达式的值输出在屏幕上 如:PRINT “a+b=”,3+5 结果显示: a+b=8 1. 下列正确的赋值语句是。 A [A] x=y+6 [B] 6=x+y [C] x+y=6 [D] 8 * X = Y * 6 2. 已知变量a=2, b=3,在某应用软件中有以下程序段: D a=a+b b=a-b a=a-b 则,此后的变量a和b的值分别为。 [A] a=2, b=2 [B] a=3, b=3 [C] a=2, b=3 [D] a=3, b=2 3. 如果变量A,B均为date,以下程序段的输出结果为。B A=#2011-4-25# B=A+6 Print B [A] 2011-4-31 [B] 2011-5-1 [C] 2011-10-25 [D] 2017-4-25 4. 已知变量a,b,c都是single, 执行以下程序段后变量c的值为。A If c< a Then c=a If c < b Then c=b [A] 最大值 [B] 最小值 [C] a的值 [D] b的值 5. 假设变量A=2,B=3,T为整型变量,执行以下程序段后a和b的值分别为。B If AT=A A=B B=T End if [A] A=2,B=3 [B] A=3,B=2 [C] A=2,B=2 [D] A=3,B=3 6. 以下为求1到100(包括100)以内所 有偶数积的算法,从中选出描述正确的算法B A.①s=1; ②i=0; ③s=s*i; B.①s=1; ②i=0; ③i=i+2; ④s=s*i; 6 ⑤如果i<100,则返回③; ⑥结束 ④i=i+2; ⑤如果i<100,则返回③; ⑥结束 C.①s=0; ②i=0; ③s=s*i; ④i=i+2; ⑤如果i<100,则返回③; ⑥结束 五、编写程序题 If语句 格式一:(简单格式) if 条件 then 语句 if 条件 then 语句1 else语句2 格式二:(分段书写) if 条件 then 条件成立时的语句1 else 条件不成立时的语句2 end if 典型例题 第1题: 在窗体\"Form1.frm\"的\"Command1_Click\"事件中编写代码(请不要随便更改其它代码),使之能够实现如下功能:编程实现求下列分段函数的值。 程序代码: dim x as integer -----(变量定义) x=text1 ------------(输入语句) if x<3 then text2=8 --------(输出语句) else text2=3*x end if D.①s=0; ②i=0; ③i=i+2; ④s=s*i; ⑤如果I<100,则返回③; ⑥结束 例: IF x>=80 then print “优良” IF x>=y then a=x else a=y 例:IF x>=60 then print “合格” Else print “不合格” End IF 例:在text1文本框中输入大于0的正整数x,计算当x<3时在text2文本框中输出\"8\",否则text2文本框中输出x与3的积。 测试数据 在text1文本框中输入2,text2文本框输出 8; 在text1文本框中输入5,text2文本框输出 15。 在text1文本框中输入6,text2文本框输出 18。 7 第2题: 在窗体\"Form1.frm\"的\"Command1_Click\"事件中编写代码(请不要随便更改其它代码),使之能够实现如下功能: 求35以内与24匹配的勾股数。 例:在Text1输入小于35的正整数a、Text2输入小于35的正整数b,判断242+a2=b2。并在Text3文本框中显示判断结果,即有等式成立则在Text3文本框中输出\"成立\",否则输出\"重试\"。 测试数据 程序代码: dim a as integer dim b as integer a=text1 b=text2 if 24^2+a^2=b^2 then text3==\"成立\" else text3=\"重试\" end if 在text1文本框中输入7,在text2文本框中输入25,text3文本框输出 \"成立\"; 在text1文本框中输入10,在text2文本框中输入26,text3文本框输出 \"成立\"; 在text1文本框中输入18,在text2文本框中输入30,text3文本框输出 \"成立\"; 在text1文本框中输入5,在text2文本框中输入25,text3文本框输出 \"重试\"。 第3题: 在窗体\"Form1.frm\"的\"Command1_Click\"事件中编写代码(请不要随便更改其它代码),使之能够实现如下功能: 判断一元二次方程ax2+bx+7=0有无相等实根。若有相等实根,则输出此实根,否则输出\"无\"。 例:在Text1输入整数a、Text2输入整数b,如果b2-4ac=0,则在Text3文本框中输出实根,否则在Text3文本框中输出\"无\"。 测试数据 在Text1文本框中输入7,在Text2文本框中输入14,Text3文本框输出\"-1\"; 在Text1文本框中输入6,在Text2文本框中输入5,Text3文本框输出\"无\"; 在Text1文本框中输入17,在Text2文本框中输入16,Text3文本框输出\"无\"; 第4题: 在窗体\"Form1.frm\"的\"Command1_Click\"事件中编写代码(请不要随便更改其它代码),使之能够实现如下功能: 已知三角形一条边边长为23,输入另外两条边的边长a、b,判断a、b和23 8 程序代码: dim a as integer dim b as integer a=text1 b=text2 if a^2-4*a*7=0 then text3==-b/(2*a) else text3=\"无\" end if 其中,一元二次方程根为: x1=-b+sqr(b^2-4*a*c)/(2*a) x2=-b-sqr(b^2-4*a*c)/(2*a) 本题因为b^2-4*a*c=0 程序代码: dim a as integer dim b as integer a=text1 b=text2 if a+b>23 and a+23>b and b+23>a then text3==\"是\" else text3=\"否\" end if 能否构成一个三角形。 例:在Text1输入a、Text2输入b,如果a+b>23 、a+23>b 、b+23>a ,则在Text3文本框中输出\"是\",否则在Text3文本框中输出\"否\"。 测试数据 在Text1文本框中输入33,在Text2文本框中输入25,Text3文本框输出\"是\"; 在Text1文本框中输入33,在Text2文本框中输入5,Text3文本框输出\"否\"; 在Text1文本框中输入17,在Text2文本框中输入16,Text3文本框输出\"是\"; 第5题: 在窗体\"Form1.frm\"的\"Command1_Click\"事件中编写代码(请不要随便更改其它代码),使之能够实现如下功能: 从text1文本框中输入一个数,判断能否被7整除,并在text2文本框中输出结果\"能\"或\"不能\"。 测试数据 在text1文本框中输入14,在text2文本框中输出:能; 在text1文本框中输入8,在text2文本框中输出:不能; 在text1文本框中输入28,在text2文本框中输出:能; 6题:请输入一个整数, 判断该数是正第数还是负数 程序代码: dim a as integer a=text1 if a>0 then text2==\"正数\" else if a<0 then text2=\"负数\" end if 第7题:请输入一个数, 求该数的绝对值 程序代码: dim a as integer a=text1 if a>0 then text2=a else text2= -a end if 9 程序代码: dim a as integer a=text1 if a mod 7=0 then text2==\"能\" else text2=\"不能\" end if 第8题: 请输入2个数,求两个数中较大的数 程序代码: dim a as integer dim b as integer a=text1 b=text2 if a>b then text3=a else text3= b end if 第6题在窗体\"Form1.frm\"的\"Command1_Click\"事件中编写代码(请不要随便更改其它代码),使之能够实现如下功能: 从text1文本框中输入一个数,判断能否被5整除,并在text2文本框中输出结果\"能\"或\"不能\"。 测试数据 在text1文本框中输入14,在text2文本框中输出:能; 在text1文本框中输入8,在text2文本框中输出:不能; 在text1文本框中输入28,在text2文本框中输出:能; Private Sub Command2_Click() Dim x as integer X=text1.text If x mod 5=0 then Text2.text=”能” Else Text2.text=“不能” End if End Sub 第7题 1. 在窗体\"Form1.frm\"的\"Command1_Click\"事件中编写代码(请不要随便更改其它代码),使 之能够实现如下功能: 已知三角形一条边边长为23,输入另外两条边的边长a、b,判断a、b和23能否构成一个三角形。 例:在Text1输入a、Text2输入b,如果a+b>23 、a+23>b 、b+23>a ,则在Text3文本框中输出\"是\",否则在Text3文本框中输出\"否\"。 10 测试数据 在Text1文本框中输入33,在Text2文本框中输入25,Text3文本框输出\"是\"; 在Text1文本框中输入33,在Text2文本框中输入5,Text3文本框输出\"否\"; 在Text1文本框中输入17,在Text2文本框中输入16,Text3文本框输出\"是\"; Private Sub Command2_Click() Dim a as integer Dim b as integer A=text1.text B=text2.text If a+b>23 and a+23>b and b+23>a then Text3.text=”是” Else Text3.text=”否” End if End Sub 六、For语句 格式: For 循环变量=初值 To 终值 Step 步长值 语句组(循环体) Next 循环变量 例如: For i = 10 To 1 Step -1 Print i Next i 利用循环实现 累加 累乘 计数 功能(填空题) 1累加器 格式:S=S+i (i为循环变量) 经常用于有规律的加法运算 11 计算s=1+2+3+….100 S=0 For i=1 to 100 step 1 S=S+i Next i 计算s=1+3+5++7+….+99 S=0 For i=1 to 50 S=s+2*i-1 Next i 计算s=1+3+5++7+….+99 S=0 For i=1 to 99 step 2 S=s+i Next i 2记数器.: 格式:s=s+1(数字1) 经常用于统计个数 统计 1到1000之间既能被3整除又能被7整除的数的个数 s=0 For i=1 to 1000 If i mod 3=0 and i mod 7=0 then s=s+1 Next i 3、累乘计算 格式:s=s*I (i为循环变量) 计算t=1*2*3*…*10 s=1 For i=1 to 10 s=s*i Next I 4、典型例题 1、求5*6*…*25的积 Dim I As Integer Dim S As Double S = 1 For i = 5 To 25 Step 1 S = S * i Next I Print \"求5*6*…*25的积:\"; S 3、计算1到100之间,所有能被3整除数的积 Dim I As Integer Dim S As Double S = 1 For i = 3 To 100 Step 3 s=s*i Next Print \"计算1到100之间,所有能被3整除数的 积:\"; S 12 2、100到200之间能被3整除的数的个数是 Dim I As Integer Dim S As Integer S = 0 For i = 100 To 200 If I Mod 3 = 0 Then S=s+1 End If Next i Print \"100到200之间能被3整除的数的个数是:\"; S 4、3到100之间所有能被3整除的数的个数 Dim I As Integer Dim S As Integer S = 0 For i = 3 To 100 Step 3 s= s+1 Next Print \"3到100之间(包括3)所有能被3整除的数的个数:\"; S 7、2到100的所有偶数和是 Dim i As Integer Dim s As Integer s = 0 For i = 2 to 100 Step 2 s = s + i Next i Print \"2到100的所有偶数和是:\"; s 6、从1累加到10的值是: Dim i As Integer Dim s As Integer s = 0 For i = 1 To 10 S=s+i Next i Print \"从1累加到10的值是:\"; s 13 因篇幅问题不能全部显示,请点此查看更多更全内容