2021春VB.NET程序设计入门(朱君波、杨志强)中国大学mooc网课答案

医卫类题库 0x6tZ 2022-07-02 10:12:24 217次浏览 54925个评论

第1讲 VB.NET入门基础

1.1 引例和VB.NET特点随堂测验

1、下列叙述VB.NET特点,不正确的是      。
    A、提供易学易用的应用程序集成开发环境
    B、具有面向对象的可视化设计工具
    C、事件驱动的编程机制
    D、只能开发简单的应用程序,不能开发数据库应用程序

2、下面对VB.NET叙述不正确的是_____。
    A、比较适合于程序设计初学者学习
    B、开发Windows图形界面应用程序
    C、同样代码的程序比C语言运行速度快
    D、程序块结构,容易维护

3、每个控件有Left和Top属性,表示在窗体上的位置,当控件往上移动,Top的值增大。

4、VB.NET是指Visual可视化、Basic程序设计语言、.NET框架三者的合成。

1.2 面向对象概念随堂测验

1、程序设计的发展经历了三个阶段,_______不属于这三阶段之一。
    A、初期程序设计
    B、结构化程序设计
    C、算法设计
    D、面向对象程序设计

2、面向对象程序设计的核心有三个特性, 不属于这三个特性之一。
    A、开放性
    B、封装性
    C、继承性
    D、多态性

3、如下对面向对象程序设计的描述, 是错误的。
    A、数据和对数据处理封装为一体,降低软件维护成本
    B、使用面向对象的方法解决问题的思路更加符合人类的思维方法
    C、面向对象程序就是抛弃结构化程序设计
    D、面向对象程序设计可提高软件开发效率

4、“张三身高180,是编程高手”句中“张三”、“身高”、“编程”分别表示面向对象程序设计中的 。
    A、属性、对象、方法
    B、对象、属性、方法
    C、方法、对象、属性
    D、都不是

5、VB.NET的事件框架是由用户逐一输入代码的,而不是通过窗体双击控件或通过代码窗口选择对象、事件自动生成的。

6、VB.NET窗体应用程序的编程主要体现在编写事件过程的代码。

7、VB.NET中工具箱中的图标是控件类,在窗体上建立的是控件 。

8、类是同种事物的抽象,对象是类的 。

1.3 VB.NET集成开发环境随堂测验

1、Visual Studio.NET的集成开发环境中,________不是该环境的编程语言。
    A、VB
    B、C++
    C、C#
    D、Pascal

2、创建VB.NET应用程序的类型有多种,通过选择不同的模板,________不属于该模板。
    A、MFC应用程序
    B、ASP.NET Web应用程序
    C、控制台应用程序
    D、Windows窗体应用程序

3、在VB.Net集成开发环境中,若将窗口布局搞乱了,则_________。
    A、Windows窗体应用程序
    B、可利用“窗口”|“关闭所有文档”菜单整理窗口
    C、可利用“窗口”|“重置窗口布局”菜单整理窗口
    D、将Visual Studio.Net关闭,重新运行会自动完成整理

4、集成开发环境是集应用程序的界面设计、代码编辑、程序________和运行于一体。

5、在设计阶段对控件属性进行设置,应该在________ 窗口设置。

6、进入VB.NET集成开发环境,程序代码应该在________窗口编辑。

1.4 简单应用程序建立随堂测验

1、在属性窗口通过Image或BackgroundImage属性导入的图片文件,可以在解决方案资源管理器窗口单击上方的“显示所有文件”按钮,然后在______文件夹下可查看到该图片文件。
    A、引用
    B、Resources
    C、My Project
    D、Obj

2、完成一个应用程序通常需经历如下步骤: (1)对象属性的设置 (2)运行和调试 (3)保存项目文件 (4)对象事件过程的编程 (5)分析问题明确目标 (6)建立用户界面的对象 正确的顺序应是________。
    A、(5)(6)(1)(4)(2)(3)
    B、(1)(2)(3)(4)(5)(6)
    C、(5)(4)(3)(6)(1)(2)
    D、(4)(5)(6)(1)(2)(3)

3、一个项目有很多文件组成,在窗体上设计的界面和编写的代码是保存在扩展名为 的文件中。

4、一个项目的默认路径是BIN文件夹下的 文件夹,可存放运行该程序的原始素材。

5、当要保存一个项目时,最方便的方法是单击工具栏的_____按钮,可保存该项目的所有文件。

第1讲 单元测验

1、不属于VB.NET特点的是 。
    A、没有语法的程序编写语言
    B、易学易用的集成开发环境
    C、具有面向对象的可视化设计工具
    D、事件驱动的编程机制
    E、支持结构化程序设计
    F、具有丰富的数据类型、类库
    G、强大的数据库、网络和图形功能
    H、完备的帮助功能

2、在VB.NET中,显示帮助信息的快捷键是 。
    A、F1
    B、F2
    C、F5
    D、F6
    E、F3
    F、Alt+F4
    G、Ctrl+C

3、在VB.NET集成开发环境中,通过 窗口编写程序。
    A、代码
    B、即时
    C、监视
    D、布局
    E、属性
    F、事件

4、在集成开发环境有两类窗口,浮动和固定,下面 窗口不是浮动窗口。
    A、窗体
    B、代码
    C、工具箱
    D、属性
    E、即时

5、VB.NET项目文件的扩展名是 。
    A、.vbproj
    B、.vb
    C、.sln
    D、.exe
    E、.user
    F、.frm

6、在下列窗口中, 可以查看与项目有关的所有文件。
    A、解决方案资源管理器
    B、属性窗口
    C、起始页
    D、任务列表
    E、代码窗口
    F、工具箱窗口

7、将调试好的exe可执行文件复制到其他机器上不能运行,其主要原因是________ 。
    A、运行的机器上无.NET框架
    B、缺少窗体文件
    C、该可执行文件有病毒
    D、缺少代码文件
    E、缺少属性文件
    F、缺少方法文件

8、在下列有关VB.NET项目文件的叙述中,不正确的是 。
    A、打开扩展名为.vb的文件,就能打开项目文件。
    B、打开扩展名为.exe的文件,就能打开项目文件。
    C、单击工具栏上的“保存全部”按钮,可以保存项目的所有相关文件。
    D、执行“文件|关闭项目”命令,可以将当前项目的所有文件关闭。
    E、创建新项目时,系统自动创建一个与项目名称同名的文件夹。
    F、bin\debug是项目的当前目录,用于存放运行该项目的可执行程序和通过编码装入的图片、数据库等素材。

9、对象有三要素,分别是: 。
    A、属性,事件和方法。
    B、界面,代码和属性
    C、事件,数据和结构
    D、方法,函数和功能
    E、属性,驱动和代码

10、在VB.NET中,解决方案文件的扩展名是 。
    A、.sln
    B、.exe
    C、.vb
    D、.frm
    E、.cs
    F、.obj

11、对象发生了某个事件,就会执行与这个事件相应的代码,这段代码被称为 。

12、.NET框架有两个重要组成部分: (填写中文)和.NET基础类库。

第1讲 实验作业 VB.NET环境和可视化编程基础

1、启动VB.NET,创建一个“Windows应用程序”类型的应用程序。 程序的设计界面如图1.1,以“昵称-1-1”为项目名保存。 项目完成后,将整个项目文件夹压缩成:昵称-1-1.rar,以附件形式提交。 要求:在屏幕上显示“欢迎学习VB.NET”,在文本框输入你的姓名,在标签框显示输入的姓名。 图1.1 实验1.1运行界面 【提示】 ① 所用的控件及属性设置见表2.1.1。 ② “欢迎学习VB.NET”要在两行显示,将Label1控件的宽度缩小一些,控件的属性见表2.1.1。 ③ Label1是第一个Label控件,小写字母“l”与数字“1”要区分。

2、模仿教材例1.1,改变事件过程中上下移动为左右移动,也要考虑文字出窗体边界的情况。 图1.2 实验1.2 设计界面 各控件及属性在属性窗口设置见表格2.1.2,背景图形文件可以选择自己喜欢的。 按钮上的图标通过Windows搜索功能查找。以“昵称-1-2”为项目名保存。 项目完成后,将整个项目文件夹压缩成:昵称-1-2.rar,以附件形式提交。 说明:按钮上的两个图标可以从网上获取的任意图标。

第2讲 可视化编程基础

2.1通用属性和窗体随堂测验

1、在VB.NET中,属性值的类型有三类, 不属于这三类之一。
    A、基本数据
    B、数组‍
    C、枚举
    D、结构、对象

2、欲使标签中文本居中显示,可通过设置________属性实现。
    A、Locked
    B、Padding
    C、Dock
    D、TextAlign

3、在代码设计时,要取消在窗体装入的背景图,对应的程序代码为 。
    A、Me.BackgroundImage =Nothing
    B、Me.BackgroundImage =””
    C、Form1.BackgroundImage =””
    D、Form1.BackgroundImage =Nothing

4、打开窗体Form1时自动执行的语句,应将代码写入_______事件的过程模块。
    A、Form1_Load()
    B、Form1.Load()
    C、Form_Load()
    D、Form.Load()

5、图片框装入的图片与窗体装入图片使用相同的Image属性。

6、控件的 属性在代码设计时使用,代表了该控件对象。

7、在窗体上显示的某控件的文本内容,应在控件的 属性设置。

8、在代码设计时,要对窗体的标题改变为“我的窗体”,对应的代码为 ‍。

2.2基本控件随堂测验

1、若要使标签控件显示时不覆盖窗体的背景图案,要对 属性设置为Transparent。
    A、ForeColor
    B、BackColor
    C、BorderStyle
    D、BackStyle

2、窗体上仅有两个文本框TextBox1和TextBox2控件, 当焦点在TextBox1时,按下Tab键后,如下叙述正确的是 。
    A、触发了TextBox1的GotFocus事件和TextBox2的LostFocus事件‍
    B、触发了TextBox1的LostFocus事件和TextBox2的GotFocus事件
    C、触发了TextBox1的KeyPress事件和TextBox2的GotFocus事件
    D、触发了TextBox1的LostFocus事件和TextBox2的KeyPress事件

3、将TextBox1中选定的文本赋值给变量S, 语句是正确的。
    A、s = TextBox1.SelectionLength
    B、s = TextBox1.SelectedText
    C、s = TextBox1.SelectionStart
    D、s = TextBox1.Text

4、在图片控件(PictureBox)中SizeMode属性用于控制调整图片框中显示的图片大小。下面的 枚举值使得图片能根据图片控件框的大小而自动放大缩小。
    A、Normal‍
    B、CenterImage
    C、AutoSize
    D、StretchImage

5、将文本框TextBox1设置为只能显示不能输入信息,应使用________语句。
    A、TextBox1.ReadOnly = True
    B、TextBox1.MaxLength = 0
    C、TextBox1.Visible = Flase
    D、TextBox1.Width = 0

6、判断在文本框是否按了Enter键,可通过文本框的 事件中编写代码实现。
    A、TextChanged
    B、KeyDown
    C、KeyPress
    D、窗体上仅

7、对象的方法是用来描述和反映对象特征的参数。

8、若要去除窗体上某标签的自动调整文本大小功能,可以通过将 属性设置为False来实现。

9、要使文本框可输入多行文本,应设置其 属性为True。

2.3综合应用-模拟神七发射随堂测验

1、对RichTextBox控件, 描述是错误的。
    A、可以输入文本和编辑文本
    B、可以插入图片
    C、可以对选定的文本进行格式化
    D、能将Text的内容保存到磁盘上,不能将磁盘上的文件装入到Text属性

2、要判断图片控件PictureBox1完全离开窗体左边界, 表达式正确 。
    A、PictureBox1.Left<Me.Right
    B、PictureBox1.Top+PictureBox1.Height<0‍
    C、PictureBox1.Left<0
    D、PictureBox1.Left+PictureBox1.Width<0

3、在代码窗口,VB.NET关键字默认显示的颜色是蓝色。

4、在应用程序中,要实现动画效果,主要通过Timer定时器控件的Tick事件过程来实现。

5、要使得控件的Text属性根据程序运行时根据不同状态显示相应的内容,既可以在属性窗口设置,也可通过代码窗口编写代码实现。

6、RichTextBox控件和TextBox控件功能完全相同,可以相互取代。

第2讲 单元测验

1、两个控件的 属性一定不能相同。
    A、Name
    B、Text
    C、Font
    D、Size
    E、Location
    F、Visible

2、窗体的Load事件,在 时候触发。
    A、当应用程序启动后
    B、当鼠标单击窗体时
    C、当鼠标双击窗体时
    D、当窗体变成活动窗体时
    E、当改变窗体的大小时

3、设置窗体边框的属性是 。
    A、FormBorderStyle
    B、Text
    C、BackgroundImage
    D、Cursor
    E、Icon

4、下列不属于控件属性的是 。
    A、Class
    B、Click
    C、Name
    D、Text
    E、Size
    F、Font
    G、Visible

5、如果某控件的Enable属性为false,则表示 。
    A、该控件无效
    B、该控件不显示
    C、该控件没有背景颜色
    D、该控件没有字体
    E、该控件不能删除
    F、该控件位置固定

6、当文本框的ScrollBars属性设置了非None值,却没有滚动条,原因是 。
    A、文本框的MultiLine属性为False
    B、文本框的MultiLine属性为True
    C、文本框的Locked属性为True
    D、文本框的Enabled属性为True
    E、文本框的ReadOnly属性为True

7、一句语句要在下一行继续写,用 符号作为续行符。
    A、_ (下划线)
    B、– (减号)
    C、+
    D、...
    E、//

8、在文本框中,通过 属性能获得当前插入点所在的位置。
    A、SelectionStart
    B、SelectionLength
    C、SelectedText
    D、Text
    E、Cursor

9、要使文本框不能输入文字,只能显示,可以对 属性进行设置。
    A、ReadOnly
    B、Locked
    C、Visible
    D、Enabled
    E、Name

10、在代码窗口,代码下方有兰色波浪线表示 。
    A、编译错误
    B、对代码设置了格式
    C、逻辑错误
    D、运行时错误
    E、注释代码

11、控件的属性可以通过属性窗口设置,也可以在代码窗口通过代码来设置。

12、当Label控件的AutoSize属性为True时,可以随意调整控件的大小。

13、当文本框的Text属性值发生改变时,将引发文本框的________事件。

14、当文本框的 属性为True时,可以输入或显示多行文本。

第3讲 VB.NET语言基础

3.1 引例圆柱体计算-数据类型概念随堂测验

1、下列标识符中合法的是:__________。
    A、5a6b
    B、Good Morning
    C、Dim
    D、Good_Morning

2、下列关于数据类型的说法,正确的是_________。
    A、Char类型的数据占4个字节
    B、Date类型的数据占8个字节,数据范围为1/1/1000/到12/31/9999
    C、String类型数据的类型符为@
    D、Boolean类型的数据占2个字节,范围为:True或False

3、下面__________不属于VB.NET复合数据类型。
    A、字符串
    B、数组
    C、结构
    D、枚举

4、数据类型为Integer的数据在内存中占用的字节数为__________。
    A、4
    B、1
    C、2
    D、8

5、数据类型为Single的数据的类型标识符为______________。
    A、%
    B、!
    C、&
    D、#

6、VB.NET中,如果两个变量名的名称中只有大小写不同,被视作两个相同的变量。

7、VB.NET中的关键字也可以用作变量名。

8、在VB.NET中,标识符的名称必须由字母或_________开头。

9、利用变量的MaxValue和MinValue可以获得不同类型的数据取值范围,若超出该有效范围,就构成______。

3.2 变量和常量随堂测验

1、以下字符型直接常量合法的是_______。
    A、Hello$
    B、"Hello"
    C、'Hello'
    D、Hello

2、以下_____是合法的单精度型变量。
    A、num!
    B、sum%
    C、rmb$
    D、world#

3、以下定义常量不正确的语句是_______。
    A、Const Num As Integer=256
    B、Const Num=256
    C、Const Str$="TongJi"
    D、Const Day$=#10/1/1949#

4、以下整型直接常量非法的是______。
    A、256
    B、&O256
    C、&H256
    D、%256

5、一条Dim语句可以同时声明多个变量。如果多个变量类型相同,则可以用一个As来指定前面几个由逗号分隔的变量。

6、在VB.NET中有三种常量:______、用户声明的符号常量、系统提供的常量。

7、VB内部常量一般以小写“_________”字母开头,后面跟有意义的符号。

3.3运算符和表达式随堂测验

1、下列关系运算符表达式,结果为True的是_________。
    A、56>78
    B、"Hello"="HeLLO"
    C、"hello">"Hello"
    D、"HELLO">="hello"

2、表达式 32 / 4 - 2 ^ 4 * 16 / 4 Mod 7 \ 3 的值为__________。
    A、7
    B、0
    C、8
    D、1

3、与数学表达式 ab/(3cd) 对应,VB.NET的不正确表达式是 ______ 。
    A、a*b/(3*c*d)
    B、a/3*b/c/d
    C、a*b/3/c/d
    D、a*b/3*c*d

4、9876 & 1000 + 100 的结果为_________。
    A、98761100
    B、"98761000100"
    C、10976
    D、"10876100"

5、\、/、Mod、* 四个算术运算符中,优先级别最低的是 _________。
    A、\
    B、/
    C、Mod
    D、*

6、操作数 具有不同的数据精度时,为了保证类型转换的正确性,应从高精度数据类型向低精度数据类型转换。

7、"&"作为字符串连接符,不管两旁的操作数是字符型还是数值型,进行连接操作前,系统先将操作数转换为字符型。

8、"+"的两旁一个为数字字符型,另一个为数值型,则自动将数值转换为字符型,然后进行连接。

9、逻辑量False转为数值时等于0,逻辑量True转为数值时等于_______。

10、数学表达式的VB.NET算术表达式为________(省略不必要的空格)。

3.4 常用函数随堂测验

1、已知s=256.128, 下列格式输出函数中,结果错误的是__________。
    A、Format(s,"0000.00") 显示为 0256.13
    B、Format(s,"####.##") 显示为 0256.13
    C、Format(s,"00.0000") 显示为 256.1300
    D、Format(s,"0.00E+00") 显示为 2.56E+02

2、以下字符串函数的实例中,错误的是_________。
    A、InStr("NOPAINSNOGAINS","AIN")=2
    B、Microsoft.VisualBasic.Left("NOPAINSNOGAINS",2)="NO"
    C、Len("我爱TongJi")=8
    D、Mid("NOPAINSNOGAINS",8,2)="NO"

3、下列转换函数的实例中,结果正确的是__________。
    A、LCase("Hello")="HELLO"
    B、Fix(-64.05)=-64
    C、Str(64.05)="64.05"
    D、Chr(97)="97"

4、下列计算结果错误的是________。
    A、Abs(-256.1)=256.1
    B、Cos(0)=1
    C、Sign(-256.1)=1
    D、Min(6,7)=6

5、下列转换函数的实例中,结果错误的是________。
    A、Round(10.81)=10
    B、Int(10.81)=10
    C、Int(-10.81)=-11
    D、Round(-10.81)=-11

6、Rnd函数不可能产生下列值中的______。
    A、0
    B、1
    C、0.552
    D、0.1

7、随机函数Rnd产生大于等于0且小于等于1的双精度随机数。

8、String类函数中SubSting(N1,N2) 用于获取从N1位置开始的N2个字符。

9、在三角函数中都以度数来进行计算。

10、函数_______返回星期几的代号,星期日为1,星期一为2。

11、表达式Ucase(Mid("abcdefgh",3,4))的值是_________。

3.5 综合应用-字符串替换随堂测验

1、Dim s1 As String="goodstudent" 下列String类函数中,计算错误的是________。
    A、s1.Insert("##",5)="good##stuent
    B、s1.Remove(4,5)="goodnt"
    C、s1.Replace("d","8")="goo8stu8ent"
    D、s1.Substring(3,4)="dstu"

2、下列字符串函数的案例中,错误的是_______。
    A、Right("Tongji",2)="ji"
    B、StrDup(4,"T")="TTTT"
    C、Left("Tongji",2)="To"
    D、‍Mid("Tongji",2,2)="ng"

3、调用下列的________函数时,需要加命名空间的限定"Microsoft.VisualBasic".
    A、Instr
    B、Right
    C、Len
    D、Space

4、下列关于字符串函数的说法中,正确的是_______。
    A、Mid(C,N1)将取出C中从N1位置到结束的字符子串
    B、Instr(N,C1,C2)的N缺省时默认N=0
    C、Instr(N,C1,C2)函数中,找不到C2则返回-1
    D、Replace(C,C1,C2)在C中将C1代替C2

5、Dim str As String ="TongjiUniversity" 下列String类函数中,计算正确的是_______。
    A、str.IndexOf("n")=2
    B、str.IndexOf("n")=3
    C、str.IndexOf("n")=8
    D、str.IndexOf("n")=7

6、常用字符串函数和String类函数的起始位置记数的第一个字符都是1。

7、在VB.NET中,西文字符和汉字都视作为一个字,占2个字节。

8、产生N个空格的字符串,可使用函数____(N)来实现。

9、Trim函数用于去掉字符串两边的______。

第4讲 控制结构-顺序结构

4.1.1 引例温度转换-顺序结构概念随堂测验

1、程序设计的三种基本结构是__________。
    A、选择结构、转向结构、顺序结构
    B、循环结构、递归结构、选择结构
    C、过程结构、顺序结构、选择结构
    D、循环结构、顺序结构、选择结构

2、关于结构化程序设计和顺序结构的说法中,下列说法错误的是____________。
    A、结构化程序设计的基本思想之一是“单入口和单出口”的控制结构
    B、顺序结构就是个语句按出现的先后次序顺序执行。
    C、编写程序时,要遵循顺序结构的自上而下依次执行的规则。
    D、VB.NET是完全面向对象的程序设计语言,因此在事件过程代码编写中只能使用面向对象思想而不能使用结构化思想。

3、三种基本控制结构中的_____结构是按语句出现的先后次序依次执行。

4.1.2 赋值语句随堂测验

1、赋值语句:y=666 & Replace("2112",1,2) 执行后,y变量中的值是_____________ 。
    A、"6661111"
    B、2888
    C、"6662222"
    D、1777

2、下列关于赋值语句的说法中,错误的是________。
    A、语句TextBox1.Text=""常用来清除文本框的内容
    B、赋值语句既可以用来计算变量的值,也可以用来设置对象的属性
    C、赋值号的左边可以是变量名、属性名或表达式
    D、复合赋值运算符"&="常用来在窗体的控件上显示多行信息

3、下列赋值语句中,正确的是_________。
    A、j=i/20
    B、5*j=i
    C、i=j-i;
    D、i++=j

4、下列关于符号"="的说法中,错误的是________。
    A、VB.NET会自动判断"="是赋值号还是等于号
    B、根据"="在程序中所处位置,条件表达式中的"="为等于号,其它的"="都是赋值号
    C、赋值语句x=y与y=x是作用不同的赋值语句
    D、在关系表达式中x=y与y=x的结果可能相同可能不相同

5、赋值语句中,当右边的表达式为数值类型并与左边的变量精度不同时,表达式的值将强制转换为左边变量的精度。

6、当逻辑类型赋值给数值类型时,True转换为1,False转换为0。

7、使用了复合赋值的语句:sum+=a 与普通赋值语句:__________的作用是相同的。

4.1.3 输入、输出函数和方法随堂测验

1、要让消息框显示“确定”和“取消”按钮,可以通过将Button参数设置为MsgBoxStyle的哪一个枚举值实现?
    A、OkOnly
    B、YesNo
    C、Information
    D、OkCancel

2、编写帐户和密码输入的检验程序时,下列做法错误的是__________。
    A、要使得输入的帐户不超过8位数字,只需将其文本框的MaxLength属性设置为8
    B、在文本框中输入帐户后,按Tab键时,会触发LostFocus事件。
    C、输入密码的文本框,若要使得输入的字符以*显示,需要将文本框的Text属性设置为*
    D、判断文本框中输入的帐户号码是否为数字,可以通过IsNumeric函数来判断。

3、下列关于输出方法的说法中,错误的是__________。
    A、Write和WriteLine的区别是前者输出不换行,后者换行。
    B、可利用WriteLine方法在”输出“窗口中输出变量或表达式的结果。
    C、利用Write和WriteLine方法在”窗体“窗口中输出变量或表达式的值。
    D、要显示”输出“窗口,可选择“调试”菜单下”窗口“子菜单的“输出”菜单项。

4、下列说法中,错误的是__________。
    A、InputBox函数用于打开一个对话框,等待用户输入内容。
    B、MsgBox函数用于打开一个信息框,等待用户选择一个按钮。
    C、Write用于临时输出变量或表达式的结果。
    D、MsgBox函数返回值是一个逻辑值,表明是否选中确定按钮。

5、调用一次InputBox函数可以输入一个或多个数据。

6、除了用TextBox控件 进行数据输入外,还可以用InputBox函数输入。

7、调用MsgBox打开了信息框,当没有返回值时,该对话框显示 个按钮。

4.1.4 程序调试随堂测验

1、下列关于程序中出现的错误,说法正确的是___________。
    A、当用户在代码窗口中编辑代码时,VB.NET会对程序直接进行逻辑检查,发现程序中存在的逻辑错误。
    B、语法错误是指VB.NET在编译通过后,代码运行时发生的错误。
    C、逻辑错误往往是由指令代码执行了非法操作引起的。
    D、系统会对语法错误自动检测并在代码下面以波浪线显示。

2、下面哪一种错误是运行时错误?
    A、变量没有定义
    B、关键字写错
    C、打开一个不存在的文件
    D、表达式书写不正确

3、下列哪一种错误是逻辑错误?
    A、语句次序不对
    B、函数未定义
    C、分母为0
    D、关键字错误

4、下列哪一种错误不是语法错误?
    A、关键字输入错误
    B、变量未定义
    C、变量类型不匹配
    D、程序运行后结果不正确

5、使标签Label1显示相关内容,语句 Label1="Hello World!" 的错误是__________。
    A、语法错误
    B、逻辑错误
    C、运行时错误
    D、没有错误

6、出现运行时错误时,程序运行到错误语句时,程序会自动中断,并会出现错误信息提示,用户可以修改代码。

7、在代码中插入断点,可以按下功能键____键。

8、三种错误中,通常不显示出错原因或给出有关错误信息的是________错误。

第4讲单元测验

1、表达式:123+MID("123456",3,2) 执行后,结果是 。
    A、157
    B、"12334"
    C、12334
    D、123
    E、168
    F、程序错误

2、下面正确的赋值语句是 。
    A、y=x+30
    B、z=val(InputBox("请输入人数"))
    C、x+y=30
    D、3y=x
    E、3=xy
    F、y=π*r*r

3、已知 a=12,b=20, 复合赋值语句: a *=b+10 执行后,a的值是 。
    A、360
    B、250
    C、50
    D、30
    E、80

4、InputBox函数返回值的数据类型是 。
    A、字符串型
    B、整型
    C、长整型
    D、单精度型
    E、双精度型

5、为了给x,y,z三个变量赋初值1,下面正确的赋值语句是 。
    A、x=1:y=1:z=1
    B、x=1,y=1,z=1
    C、x=y=z=1
    D、xyz=1
    E、x,y,z=1

6、InputBox函数中不能省略的参数是 。
    A、提示
    B、标题
    C、默认值
    D、x坐标
    E、y坐标

7、表达式:123 & MID("123456",3,2) 执行后,结果是 。
    A、"12334"
    B、"12345"
    C、157
    D、"157"
    E、"168"

8、MsgBox函数的作用是 。
    A、打开信息框,等待用户选择一个按钮并返回。
    B、只显示提示信息,不等待用户选择按钮。
    C、提供用户输入一个数据
    D、等待用户输入用户名
    E、等待用户输入密码

9、Debug.Write()方法的作用是: 。
    A、调试程序时,在“输出”窗口输出信息
    B、程序运行时在"窗体"窗口输出信息
    C、程序调试时,将信息写入文件
    D、将信息写入Bin/Debug文件夹
    E、将调试者信息写入日志

10、赋值语句:y = 3x,是正确的赋值语句,其作用是将x乘以3后的值赋给y。

11、执行赋值语句:y = z 与 z = y 效果是等价的。

12、获取当前系统日期的函数是 。

13、表达式:a = Val(TextBox1.Text),当在文本框中输入"12a3b"时,则a的值为 。

第5讲 控制结构-选择结构和控件

4.2.1 If语句随堂测验

1、假定有定义:Dim C$,如果当C中从第二个字符开始的子串是"ABC",则利用MsgBox显示"Yes",否则显示"No",下面语句正确的是___________。‍
    A、If Mid(c, 2 ,3) = "ABC" Then MsgBox("Yes") Else MsgBox("No")
    B、If Mid(c, 2 ,3) = "ABC" Then MsgBox("Yes") : MsgBox("No")
    C、If Mid(c, 2 ,3) = "ABC" Then MsgBox("Yes") MsgBox("No")
    D、MsgBox("No") If Mid(c, 3 ,2) = "ABC" Then MsgBox("Yes")

2、关于多分支结构,错误的是 。
    A、程序可以选择同时执行多个分支结构中的多个语句块
    B、程序只能选择执行多个分支结构中的一个语句块
    C、结构中的表达式不能重合,否则逻辑出错
    D、结构中的语句块可以重合

3、运行下面程序段,输入3后,y的值是 。 Dim x,y As Integer x = Val(InputBox("请输入数据")) If x > =1 Then y = 1 ElseIf x > =2 Then y = 4 ElseIf x > =3 Then y = 7 Else y = 9 End If
    A、1
    B、4
    C、7
    D、9

4、在关于下面程序段的说法中,正确的是 。 y = Sin(x) if x<0 Then y = Cos(x)
    A、当x>=0,y = Cos(x);当x<0,y = Sin(x)。
    B、无论x的值是什么,y =Cos(x)
    C、当x>=0,y = Sin(x);当x<0,y = Cos(x)
    D、无论x的值是什么,y = Sin(x)

5、在关于下面程序段的说法中,正确的是 。 if x<0 Then y = Cos(x) y = Sin(x)
    A、当x>=0,y = Cos(x);当x<0,y = Sin(x)。
    B、无论x的值是什么,y = Cos(x)
    C、当x>=0,y = Sin(x) ;当x<0, y = Cos(x)
    D、无论x的值是什么,y = Sin(x)

4.2.2 SELECT语句随堂测验

1、在多分支结构的Case子句中,判断变量 t 的值是"a"到"c"之间的字母,以下写法正确的是________。
    A、Case t >="a" And t <="c"‍
    B、Case "a, b, c"
    C、Case a To c
    D、Case "a", "b", "c"

2、在Select语句中,下面各Case子句中有语法错误的是_________。‍
    A、Case 1 to 10
    B、Case x>100‍
    C、Case Is>10
    D、Case 2,4,6

3、下面程序段运行后,z的值是 。 Dim x,y,z As Integer x = 3 : y = -1 Select Case x+y Case 1 z = 80 Case -1 z = 70 Case Else z = 60 End Select
    A、60
    B、70
    C、80
    D、程序出错

4、下面程序段运行后,z的值是 。 Dim x,y As Integer x = 3 : y = -1 Select Case x,y Case 1 z = 80 Case -1 z = 70 Case Else z = 60 End Select
    A、60
    B、70
    C、80
    D、程序错误

5、能用select case语句编写的程序,也可以用 IF 语句编写。

4.2.3 If嵌套随堂测验

1、下面程序段运行,输入2,-1后,输出 。 Dim x,y As Integer x =Val(InputBox("请输入数据")) y = Val(InputBox("请输入数据")) If x > 0 Then If y > 0 Then MsgBox("第一象限") Else MsgBox("第四象限") End If Else If y > 0 Then MsgBox("第二象限") Else MsgBox("第三象限") End If End If
    A、第一象限
    B、第二象限
    C、第三象限
    D、第四象限

2、在Select语句中,下面各Case子句中有语法错误的是_________。‍
    A、Case 1 to 10
    B、Case Is>10‍
    C、Case 2,4,6
    D、Case x>100

3、下面程序段运行,输入"白色",10后,输出 。 Dim sColor,sSize As String sColor = InputBox("请输入颜色") sSize = InputBox("请输入大小") If sSize > 10 Then Select Case sColor Case "白色" MsgBox( "样式1") Case "黑色" MsgBox( "样式2") Case Else MsgBox( "样式3") End Select Else Select Case sColor Case "红色" MsgBox( "样式4") Case "绿色" MsgBox( "样式5") Case Else MsgBox( "样式6") End Select End If
    A、样式6
    B、样式1
    C、样式3
    D、样式5

4.2.4 选择控件和分组控件随堂测验

1、在下列属性中,________属性是复选框拥有而单选按钮不拥有的。
    A、‍AutoSize‍‍
    B、Checked
    C、CheckState
    D、Text

2、在下列属性中,用于判断单选按钮和复选框是否被选定的属性是________。
    A、‍Checked
    B、Check
    C、Enabled
    D、Visible

3、单选按钮的选定状态发生变化时,肯定发生________事件。
    A、CheckedChanged‍
    B、Click
    C、DoubleClick
    D、不会发生任何事件

4、在同一个GroupBox中的多个单选按钮,只能有一个单选按钮被选中。

5、单选按钮的Checked属性值如果是Ture,表示被选中;如果是False,表示是未选中。

6、在同一个GroupBox中的多个复选框,只能有一个复选框被选中。

第5讲单元测验

1、分段函数:,下面程序段中正确表达的是 。
    A、If x > =2 Then y = 3 ElseIf x > =1 Then y = 2 ElseIf x > =0 Then y = 1 Else y = 0 End If
    B、If x < 0 Then y = 0 If x < 1 Then y = 1 If x < 2 Then y = 2 If x >= 2 Then y = 3
    C、If x >= 2 Then y = 3 If x >= 1 Then y = 2 If x > 0 Then y = 1 If x < 0 Then y = 0
    D、If x < 0 Then y = 0 ElseIf x > 0 Then y = 1 ElseIf x > 1 Then y = 2 Else y = 3 End If
    E、If x < 0 Then y = 0 If 0 <= x <1 Then y = 1 If 1 <= x < 2 Then y = 2 If x >= 2 Then y = 3

2、下面If语句用于统计满足性别(sex)男、职称(duty)为副教授或教授、年龄(age)小于40岁条件的人数,正确的是 。
    A、If sex = "男" And age < 40 And (duty= "教授" or duty= "副教授") Then n = n + 1
    B、If sex = "男" And age < 40 And duty= "教授" or duty= "副教授" Then n = n + 1
    C、If sex = "男" And age < 40 And duty = "教授" And duty = "副教授" Then n = n + 1
    D、If sex = "男" Or age < 40 Or duty = "教授" And duty = "副教授" Then n = n + 1
    E、If sex = "男" Or age < 40 Or duty = "教授" Or duty = "副教授" Then n = n + 1

3、关于单选按钮和复选框控件的说法中,错误的是 。
    A、某个单选按钮被单击一定会触发它的CheckedChanged事件
    B、一个单选按钮的状态发生变化,不会影响其他单选按钮的状态
    C、某个复选框被单击一定会触发它的CheckedChanged事件
    D、一个单选按钮的状态发生变化,同组中必有另一个单选按钮的状态也发生变化
    E、一个复选框的状态发生变化,不会影响其他复选框的状态

4、下面程序段运行后,显示的结果是 。 Dim x% If x Then MsgBox(x) Else MsgBox( x + 1)
    A、1
    B、0
    C、2
    D、-1
    E、显示出错信息

5、语句If x=1 Then y=1,下列说法正确的是 。
    A、x=1为关系表达式,y=1为赋值语句
    B、x=1和y=1均为赋值语句
    C、x=1和y=1均为关系表达式
    D、x=1为赋值语句,y=1为关系表达式
    E、语句错误

6、下面程序段计算学生的外语附加分:外语6级(lang6)为 ”优秀” 加15分,”通过” 加10分;外语4级(lang4)为 ”优秀” 加8分,”通过” 加4分,外语附加分只能计一次最高的分数。下面 能正确计算。
    A、If lang6 = "优秀" Then langf = 15 ElseIf lang6 = "合格" Then langf = 10 ElseIf lang4 = "优秀" Then langf = 8 ElseIf lang4 = "合格" Then langf = 4 Else langf = 0 EndIf
    B、If lang4 = "合格" Then langf = 4 ElseIf lang4 = "优秀" Then langf = 8 ElseIf lang6 = "合格" Then langf = 10 ElseIf lang6 = "优秀" Then langf = 15 Else langf = 0 EndIf
    C、If lang6 = "优秀" Then langf = 15 If lang6 = "合格" Then langf = 10 If lang4 = "优秀" Then langf = 8 If lang4 = "合格" Then langf = 4 langf = 0
    D、If lang4 = "合格" Then langf = 4 If lang4 = "优秀" Then langf = 8 If lang6 = "合格" Then langf = 10 If lang6 = "优秀" Then langf = 15 Else langf = 0
    E、If lang6 = "优秀" Then langf = 15 If lang6 = "合格" Then langf = 10 If lang4 = "优秀" Then langf = 8 If lang4 = "合格" Then langf = 4 Else langf = 0

7、分组控件(GroupBox)的主要作用是 。
    A、对控件分组
    B、为了规整显示
    C、建立新的显示窗口
    D、在窗体上划线条
    E、建立新的字体

8、下面程序段,显示的结果是 。 Dim x% x = Int(Rnd) + 5 Select Case x Case 5 MsgBox( "优秀") Case 4 MsgBox( "良好") Case 3 MsgBox( "通过") Case Else MsgBox( "不通过") End Select
    A、优秀
    B、良好
    C、通过
    D、不通过
    E、不确定,随机

9、下面程序段求两个数中的大数,不正确的是 。
    A、If y >= x Then Max1= y Max1 = x
    B、Max1 = y If x >= y Then Max1= x
    C、If x > y Then Max1 = x Else Max1 = y
    D、Max1 = Math.Max(x,y)
    E、Max1 = x If y >= x Then Max1= y

10、用If语句表示分段函数,下列不正确的程序段是 。
    A、If x >=1 Then f=Math.Sqrt(x+1) f=x*x+3
    B、If x >=1 Then f= Math.Sqrt(x+1) If x < 1 Then f=x*x+3
    C、f=x*x+3 If x >=1 Then f= Math.Sqrt(x+1)
    D、If x < 1 Then f=x*x+3 Else f= Math.Sqrt(x+1) EndIf
    E、f = Math.Sqrt(x+1) If x < 1 Then f=x*x+3

11、简单 If 形式无 End If 时,Then 后面只能是一句语句或多条语句间用冒号分隔,而且必须在一行上书写。

12、任何Select Case语句都可以改写成If语句,同样,任何If语句也都可以改写成Select Case语句。

13、下面程序运行后,y的值是 。 Dim x%,y% x = Int(Rnd) + 3 If x ^ 2 = 9 Then y = x ^ 2 - 2 If x ^ 2 > 8 Then y = x ^ 2 + 1

14、下面程序运行后,n的值是_______。 Dim n% n = 5 Select Case n Mod 2 Case 0 n += n/2 Case 1 n += n End Select

第6讲 控制结构-循环结构

4.3.1 Do...Loop循环随堂测验

1、在下列关于Do …Loop循环语句中循环体执行次数的说法中,正确的是________。
    A、Do While …Loop循环语句的循环体可能一次也不执行,Do…Loop While 循环语句的循环体至少执行一次。
    B、Do While …Loop和Do…Loop While循环语句的循环体都至少执行一次。
    C、Do While …Loop和Do…Loop While 循环语句的循环体可能都不执行。
    D、Do While …Loop循环语句的循环体至少执行一次,Do…Loop While 循环语句的循环体可能一次也不执行。

2、执行下面程序段后,关于变量x中存放的数值,下面说法正确的是_________。 Dim x% Do x = Int(Rnd() * 50 + 1) Loop While x Mod 2 <> 0
    A、x中存放的是随机产生的【1,50】之间的一偶数
    B、x中存放的是随机产生的【1,50】之间的一奇数
    C、x中存放的是随机产生的【1,51】之间的一偶数
    D、x中存放的是随机产生的【1,51】之间的一奇数

3、下面程序段的运行后,sum的值为_________。 Dim i,sum as Integer i = 5 : sum = 0 Do While i < 10 i = i + 2 sum = sum + i Loop
    A、9
    B、27
    C、21
    D、32

4、下面程序段运行后,i的值为_________。 Dim i as Integer i = 4 Do i = i + 2 Loop While i < 10
    A、6
    B、8
    C、10
    D、12

5、从循环体 Do While...Loop中退出,继续执行循环体后面的命令,应使用_________ 。
    A、Exit Do While
    B、Exit Do
    C、Exit
    D、Exit Loop

4.3.2 For循环随堂测验

1、若要使变量x存放数值987654321,则下面空白处应填入__________。 Dim i%, x% x = 0 For i = ___________ x = x * 10 + i Next MsgBox(x)
    A、1 To 9
    B、9 To 1
    C、9 To 1 Step -1
    D、1 To 9 Step -1

2、在下列程序段中,不能计算1到100之间奇数之和的是__________。
    A、Dim sum As Integer sum = 0 For i = 1 To 100 Step 2 sum = sum + i Next
    B、Dim sum As Integer sum = 0 For i = 1 To 100 If i Mod 2 <> 0 Then sum = sum + i Next
    C、Dim sum As Integer sum = 0 For i = 1 To 99 sum = sum + i Next
    D、Dim sum As Integer sum = 0 For i = 100 To 1 Step -1 If i Mod 2 <> 0 Then sum = sum + i Next

3、下面程序段运行后,s2的值为_________。 Dim i As Integer Dim s1, s2 As String s2 = "" s1 = "程序设计VB.NET" For i = 1 To Len(s1) s2 = Mid(s1, i, 1) & s2 Next
    A、TEN.BV计设序程
    B、程序设计VB.NET
    C、VB.NET程序设计
    D、程序设计

4、下面程序段执行后,t的值为_________。 Dim i, t As Integer t = 0 For i = 1 To 60 Step 3 If i Mod 5 = 0 Then t = t + 1 End If Next
    A、12
    B、20
    C、15
    D、4

5、以下程序段执行后,Label1.Text结果是________。 Label1.Text="" For i = 7 To 1 Step -1 If i Mod 3 = 0 Then Exit For Label1.Text &= i & " " Next
    A、7 6
    B、7
    C、7 5 4 2 1
    D、6 3

4.3.3 循环嵌套随堂测验

1、在下列关于多重循环语句的说法中,错误的是___________。
    A、内循环变量和外循环变量不能同名。
    B、外循环必须完全包含内循环,不能交叉。
    C、在外循环中可以使用Goto语句转向内循环中的任何语句。
    D、在内循环中可以使用Goto语句转向外循环中的任何语句。

2、程序的功能是要输出如下图所示的有规律图形,程序中划线处应填入_____________。 Private Sub Button1_Click(......) Handles Button1.Click Dim i%, j% Label1.Text = "" Label1.TextAlign = ContentAlignment.MiddleCenter For i = 1 To 6 For j = 1 To __________ Label1.Text &= i Next Label1.Text &= vbCrLf Next End Sub
    A、2 * i + 1
    B、i
    C、2 * i - 1
    D、6

3、下列程序执行后,sum的结果是________。 Dim sum As Integer For i = 1 To 4 Step 2 For j = 1 To i Step 2 sum += j Next Next
    A、6
    B、9
    C、5
    D、7

4、下列程序段中,循环体s = s +1执行了几次? For i = 0 To 7 Step 3 For j = 0 To 7 Step 2 s = s + 1 Next Next
    A、5
    B、7
    C、12
    D、49

第6讲单元测验

1、对用户输入的数值限制为正数,如果输入了负数,则要求重新输入。下面________可以实现。
    A、Dim x As Integer Do x = Val(InputBox("请输入数据")) Loop While x < 0
    B、Do x = Val(InputBox("请输入数据")) Loop While x > 0
    C、Do While x > 0 x = Val(InputBox("请输入数据")) Loop
    D、x = Val(InputBox("请输入数据")) If x < 0 Then End If
    E、For x < 0 x = Val(InputBox("请输入数据")) Next

2、以下程序段运行后,Label1.Text结果是_________。 Label1.Text = "" For i = 1 To 6 If i Mod 2 = 0 Then Label1.Text = i Endif Next
    A、6
    B、135
    C、246
    D、123456
    E、24

3、当在文本框输入“ABCD”时,则下面程序运行后,标签 Label1上显示的是___________。 Dim i As Integer Label1.Text = TextBox1.Text For i = 1 To Len(TextBox1.Text) Label1.Text &= Mid(TextBox1.Text, i, 1) Next
    A、ABCDABCD
    B、ABCDDCBA
    C、AABABCABCD
    D、DCBA
    E、AABBCCDD

4、下面程序功能是在文本框输入任意字符串,将字符串倒置后在标签显示结果。 例如,输入“ABCDEFG”变换成“GFEDCBA”。 在空白处填入合适的表达式,使程序完整。 Dim i As Integer Label1.Text = "" For i = 1 To Len(TextBox1.Text) Label1.Text = ________ Next
    A、Mid(TextBox1.Text, i, 1) & Label1.Text
    B、Mid(TextBox1.Text, i, 1)
    C、Label1.Text & Mid(TextBox1.Text, i, 1)
    D、Label1.Text & TextBox1.Text
    E、TextBox1.Text & Label1.Text

5、在下列循环中,能正常结束的是 。
    A、i=5 Do i=i+1 Loop while i>10
    B、i=1 Do i=i+2 Loop while i<>10
    C、i=10 Do i=i+1 Loop while i>10
    D、i=6 Do i=i-2 Loop while i<>1
    E、i=3 Do i = i mod 2 Loop while i<>0

6、以下 是正确的For … Next结构。
    A、For x = 3 To -3 Step -3 … Next
    B、For x=1 Step 10 … Next
    C、For x = 1 To 10 re: … Next If x = 10 Then GoTo re
    D、For x = 3 To 10 Step 3 … Next y
    E、For x = 3 To 1 , 3 … Next

7、下列程序段不能正确显示1!、2!、3!、4!的结果的是 。
    A、For i = 1 To 4 For j = 1 To i n = 1 n = n * j Next j MsgBox( n) Next i
    B、Dim i%, j%, n% For i = 1 To 4 n = 1 For j = 1 To i n = n * j Next j MsgBox( n) Next i
    C、Dim j%, n% n = 1 For j = 1 To 4 n = n * j MsgBox( n) Next j
    D、Dim j%, n% n = 1 j = 1 Do While j<=4 n=n*j MsgBox(n) j=j+1 Loop
    E、Dim j%, n% n = 1 j = 1 Do n=n*j MsgBox(n) j=j+1 Loop While j<=4

8、下面程序功能是在文本框输入一个正整数,转换为7进制后在标签显示结果。 在空白处填入合适的表达式,使程序完整。 Dim n As Integer Dim s As String n = Val(TextBox1.Text) Do While ________ s = n Mod 7 & s n = n \ 7 Loop Label1.Text = s
    A、n > 0
    B、n > 7
    C、s > 0
    D、TextBox1.Text > 0
    E、n < 0

9、在下面关于Do循环和For循环的说法中,正确的是 。
    A、Do循环和For循环都可以用于循环次数已知或未知的情况。
    B、For循环只能用于循环次数已知的情况。
    C、Do循环只能用于循环次数未知的情况。
    D、Do循环和For循环都不可以用于循环次数未知的情况。
    E、Do循环只能用于循环次数已知的情况。

10、以下程序段运行后,Label1.Text结果是_________。 Label1.Text = "" For i = 7 To 1 Step -1 If i Mod 3 = 0 Then Continue For Label1.Text &= i & " " Next
    A、7 5 4 2 1
    B、7
    C、7 6
    D、6 3
    E、7 6 5 4

11、在Do while···Loop 循环中,想要跳出循环,用Exit do 语句。

12、在For循环中,想要结束本轮循环,用Exit For 语句。

13、要使下列For语句的循环体循环执行20次,循环变量的初值应当是________。 For k = _______ To 5 Step 2

14、以下程序段运行后,如果输入123,b的结果是_________。 Dim a, b As Integer a = Val(InputBox("请输入数据")) Do While a > 0 b = b * 10 + a Mod 10 a = a \ 10 Loop

第7讲 控制结构-循环控件和常用算法(1)

4.3.4 滚动条、进度条和定时器随堂测验

1、进度条的 属性表示当前的进度。
    A、Text
    B、Name
    C、Value
    D、State

2、如果要设置滚动条的最大值,应设置 属性。
    A、MaxValue
    B、Maximum
    C、Value
    D、MaxSize

3、如果要修改滚动条的微调值,应修改 属性。
    A、SmallChange
    B、LittleChange
    C、Minimum
    D、MinChange

4、定时器的Interval属性Tick事件发生的时间间隔,单位是毫秒。

4.3.5 综合应用-常用算法(1)随堂测验

1、下面代码的功能是计算S=1-1/2+1/3-1/4+1/5-1/6+……+1/99-1/100的和,划线处应选择__________。 Dim i%, sum!, k% k = 1 For i = 1 To 100 sum = ______________ k = -k Next MsgBox(sum)
    A、k / i
    B、sum + k / i
    C、sum -k / i
    D、-k / i

2、下面代码的功能是: 假设某商店A类商品为19元,B类商品为9元,某人用204元一共购买了16个商品,求解其购得的A类商品和B类商品的数量。划线处应选择__________。 Dim a%, b% For a = 1 To 16 For b = 1 To 16 If ______________ Then MsgBox("A类:" & a & vbCrLf & "B类:" & b) End If Next Next
    A、19a + 9 b = 204 & a + b = 16
    B、19 * a + 9 * b = 204 & a + b = 16
    C、19 * a + 9 * b = 204 Or a + b = 16
    D、19 * a + 9 * b = 204 And a + b = 16

3、下面代码的功能是:假设有一筐桔子,若分成每堆6只,最后剩5只;每堆7只,则刚好一只不剩,输出桔子至少有多少只?划线处应选择__________。 Dim find As Boolean, x% x = 1 'x代表桔子的数量 find = False 'find用来判断是否已求出桔子的数量,其值为False表示尚未求出,为True则表示已求出 Do While ______________ If x Mod 6 = 5 And x Mod 7 = 0 Then find = True Label1.Text = "桔子至少只数:" & x End If x = x + 1 Loop
    A、find = False
    B、find = True
    C、x < 10000
    D、find <> False

4、部分级数求和,一般要有循环条件的,可以用Do循环语句实现,但不能用For语句实现。

5、只有知道迭代公式,才能用迭代法求解问题。

第7讲单元测验

1、利用枚举法求解和尚吃馒头问题。寺庙里有60个和尚,总共吃60个馒头,1个大和尚吃2个馒头,2个小和尚合吃1个馒头。问有几个大和尚、小和尚? 在空白处填入合适的表达式,使程序完整。 Label1.Text = "" Dim b1, b2 As Integer 'b1表示大和尚,b2表示小和尚 For b1 = 1 To 30 For b2 = 2 To 60 Step 2 If b1 + b2 = 60 And ________ Then Label1.Text &= "大和尚" & b1 & "小和尚" & b2 & vbCrLf End If Next Next
    A、b1 * 2 + b2 / 2 = 60
    B、b1 * 2 = b2 / 2
    C、b1 / 2 + b2 * 2 = 60
    D、b1 - b2 = 60

2、关于水平滚动条(HScrollBar)的Value属性,正确的是________。
    A、Value属性值代表当前滚动条滑块所在的值。
    B、Value属性值代表滚动条滑块的起始值。
    C、Value属性值代表滚动条滑块的默认值。
    D、Value属性值代表滚动条滑块的最大值。
    E、Value属性值代表滚动条滑块的最小值。

3、下面程序功能是求自然对数e的近似值,误差小于0.001,在标签显示结果。 在空白处填入合适的表达式,使程序完整。 Dim i As Integer Dim sum, t As Double t = 1 : i = 1 Do While ________ sum += t t = t / i i += 1 Loop Label1.Text = sum
    A、t > 0.001
    B、t < 0.001
    C、t <= 0.001
    D、i <= 0.001
    E、i > 0.001

4、关于水平滚动条(HScrollBar)的说法,正确的是________。
    A、发生Scroll事件,一定也会发生ValueChanged事件。
    B、Scroll事件和ValueChanged事件一定同时发生。
    C、发生ValueChanged事件,一定也会发生事件Scroll。
    D、Scroll事件和ValueChanged事件没有任何关系。

5、关于水平滚动条(HScrollBar)的说法,正确的是________。
    A、水平滚动条的Value所能达到的最大值除了Maximum外,还和SmallChange和LargeChange有关。
    B、水平滚动条的Value所能达到的最大值就是Maximum。
    C、水平滚动条的Value所能达到的最大值就是LargeChange。
    D、水平滚动条的Value所能达到的最大值就是MaxSize。
    E、水平滚动条的Value所能达到的最大值可以是个任意值。

6、定时器的重要事件是________。
    A、Tick
    B、Click
    C、ValueChanged
    D、TextChanged
    E、IntervalChanged

7、有数列如下: a1=1,a2=cos(a1),a3=cos(a2) •••••• 求n=15时,a15值。 在空白处填入合适的表达式,使程序完整。 Dim a As Double a = 1 For i = 2 To 15 ________ Next Label1.Text = a
    A、a = Cos(a)
    B、b = Cos(a)
    C、a2 = Cos(a1)
    D、a1 = Cos(a2)
    E、a15 = Cos(a14)

8、如果要修改进度条(ProgressBar)进度的最大值,应设置________属性。
    A、Maximum
    B、Minimum
    C、MaximumSize
    D、MinimumSize
    E、Value

9、随机生成1个二位正整数的表达式,下列________是正确的。
    A、Int(Rnd()*90 + 10)
    B、Chr(Rnd()*90 + 10)
    C、Rnd()*100
    D、Chr(Rnd()*100)
    E、Asc(Rnd()*100)

10、下面程序功能是随机产生的8个大写字母,在文本框显示结果。 在空白处填入合适的表达式,使程序完整。 Private Sub Button1_Click(......) Handles Button1.Click Dim c As Char Dim i As Integer Randomize() For i = 0 To 7 c = Chr(Int( ________ )) TextBox1.Text &= c Next End Sub
    A、Rnd()*26+65
    B、Rnd()*65
    C、Rnd()*65+26
    D、Rnd()*26+48
    E、Rnd()*26+A

11、下面程序功能是求1~50中奇数的和,在标签显示结果。 在空白处填入合适的表达式,使程序完整。 Dim i,sum As Integer For i = 1 To 50 if ________ then sum += i end if Next Label1.Text = sum
    A、i mod 2 = 1
    B、i / 2 = 1
    C、i \ 2 = 1
    D、i - 2 = 1
    E、i <> 2

12、如果水平滚动条的LargeChange属性设置过大,就会导致滚动条无法滚动的后果。

13、循环语句可以嵌套,但最多只能嵌套2层。

第8讲 数组概念和常用算法(2)

5.1 引例成绩统计-数组概念随堂测验

1、下列数组声明语句,________是不正确的。
    A、Dim s%( , )
    B、Dim s() As Integer
    C、Dim s(0 ,0) As Integer
    D、Dim s(2, ,4) As Integer

2、假如有如下定义的数组,利用循环初始化数组元素,________是正确的。 Dim s(3, 4) As Integer, i%, j%
    A、For i = 0 To UBound(s) For j = 0 To UBound(s, 2) s(i, j) = Val(InputBox("输入数据")) Next Next
    B、For j = 0 To 3 For i = 0 To 4 s(i, j) = Val(InputBox("输入数据")) Next Next
    C、For i = 0 To 3 For j = 0 To 4 s(j, i) = Val(InputBox("输入数据")) Next Next
    D、For j = 0 To UBound(s) For i = 0 To UBound(s, 2) s(i, j) = Val(InputBox("输入数据")) Next Next

3、假如已有如下定义的数组,利用循环在标签里输出每个数组元素的值,________是正确的。 Dim a(9) As Integer, i%
    A、Label1.Text = "" For i = 1 To 9 Label1.Text &= a(i) Next
    B、Label1.Text = "" For i = LBound(a) To UBound(a) Label1.Text &= a(i) Next
    C、Label1.Text = "" For i = 0 To UBound(a) Label1.Text = a(i) Next
    D、Label1.Text = "" For i = 0 To 9 Label1.Text = a(i) Next

4、在一个数组中,可以保存多个数据,而且数据类型可以不相同。

5、数组中的一个元素相当于一个变量,能保存一个数据。整个数组相当于连续的多个变量。

5.2 数组的常用算法随堂测验

1、执行以下程序后,TextBox1.Text的运行结果为:_____。 Dim n As Integer Dim a(,)As String={{"甲","乙","丙"},{"丁","戊","己"}} For n=0 To 1 TextBox1.Text&=a(n,2) Next n
    A、甲丁
    B、乙戊
    C、甲戊
    D、丙己

2、Dim arr(3) As String,则程序运行时会发生错误的语句是_________。
    A、arr(4)="1234"
    B、arr(0)=arr(1)+arr(2)
    C、arr(0)+="1"
    D、arr(3)=1

3、下面是选择法排序(升序),空白处应填入________。 Dim a(9) As Integer, i%, j%, imin%, t% For i = 0 To 9 a(i) = Int(Rnd() * 99 ) Next For i = 0 To 8 imin = i For j = i + 1 To 9 If a(________) > a(j) Then imin = j End If Next t = a(imin) a(imin) = a(i) a(i) = t Next
    A、imin
    B、0
    C、i
    D、i+1

4、下面是冒泡法排序(升序),空白处应填入________。 Dim a(9) As Integer, i%, j%, t% For i = 0 To 9 a(i) = Int(Rnd() * 89 + 10) Next For i = 0 To 8 For j = 0 To ________ If a(j) > a(j + 1) Then t = a(j) a(j) = a(j + 1) a(j + 1) = t End If Next Next
    A、9
    B、i
    C、9 - i
    D、8 - i

5、假如已有如下定义的数组,利用循环在数组中找出最小值,________是正确的。 Dim s(9) As Integer, i% For i = 0 To 9 s(i) = Int(Rnd() * 89 + 10) Next
    A、Dim min As Integer For i = 0 To 9 If s(i) > min Then min = s(i) End If Next Label1.Text = "最小值是:" & min
    B、Dim min As Integer min = s(0) For i = 1 To 9 If s(i) > min Then min = s(i) End If Next Label1.Text = "最小值是:" & min
    C、Dim min As Integer min = s(9) For i = 0 To 9 If s(i) < min Then min = s(i) End If Next Label1.Text = "最小值是:" & min
    D、Dim min As Integer For i = 0 To 9 If s(i) < min Then min = s(i) End If Next Label1.Text = "最小值是:" & min

6、在数组中某个位置插入一个数,先要腾出位置,即将这个位置后面的数据逐个移动,再插入。

第8讲单元测验

1、数组的上界可通过________函数得到。
    A、Ubound
    B、Lbound
    C、Size
    D、Length

2、下列数组声明语句,________是正确的。
    A、Dim a(3, 4) As Integer
    B、Dim a(3, 4) As Single
    C、Dim a{3, 4} As Integer
    D、Dim a[3, 4] As Integer
    E、Dim a(3 4) As Integer
    F、Dim a[3:4] As Integer

3、程序的功能是通过计算将数列的前9项保存到数组中:0、0、2、4、8、12、18、24、32。 数列计算公式为: 在空白处填入合适的表达式,使程序完整。 Dim x(8) As Integer Dim i As Integer For ________ If i mod 2 = 1 Then x(i) = (i * i - 1) / 2 Else x(i) = (i * i) \ 2 End If Next
    A、i = 0 To 8
    B、i = 1 To 9
    C、i = 2 To 10
    D、i = 0 To 8 step 2
    E、i = 1 To 9 step 2

4、如下声明多维数组,则数组a有________个元素。 Dim a(3, 0, 5) As Integer
    A、24
    B、15
    C、8
    D、16
    E、0

5、以下程序输出的结果是________。 Dim i% Dim a() As Integer={1, 2, 3, 4, 5, 6, 7} For i =0 To UBound (a) a(i) = a(i) * a(i) Next i MsgBox(a(i))
    A、程序出错
    B、49
    C、0
    D、7
    E、不确定

6、对于正在使用的数组x(n),要增加2个数组元素,又要保留原来数组中的值,以下语句中正确的写法是_________。
    A、ReDim Preserve x(n+2)
    B、Dim x(n+2)
    C、ReDim x(n+2)
    D、Dim Preserve x(n+2)
    E、Dim x(n+2) As ReDim

7、下面程序对已知数组a(),删除数组中某个数组元素。 在空白处填入合适的语句,使程序完整。 Dim i, j, Key As Integer Dim a() As Integer = {1, 6, 8, 3, 5, 9, 10, 2, 7, 4} Key = Val(InputBox("输入要删除的值")) For i = 0 To UBound(a) If a(i) = Key Then ________ End If Next i If i <= UBound(a) Then For j = i + 1 To UBound(a) a(j - 1) = a(j) Next ReDim Preserve a(UBound(a) - 1) MsgBox("删除完成") Else MsgBox("找不到要删除的元素") End If
    A、Exit For
    B、Exit Sub
    C、Exit Do
    D、a(i - 1) = a(i)
    E、a(i) = a(i - 1)

8、下列数组声明初始化语句,________是正确的。
    A、Dim a( ) As Single={1,2,3,4,5,6,7,8,9,10}
    B、Dim a(9) As Single={1,2,3,4,5,6,7,8,9,10}
    C、Dim a() As Single={1,”a”,”bc”,4,5,6,7,8,9,10}
    D、Dim a( , ) As Integer={1,2,3,4,5,6,7,8,9,10}
    E、Dim a( ) As Integer=(1,2,3,4,5,6,7,8,9,10)

9、程序的功能是将斐波那契数列前若干项保存到数组,项数由输入框输入。 斐波纳契数列前n项的值依次为:0、1、1、2、3、5、8、13、21、...,n由用户输入。在空白处填入合适的语句,使程序完整。 Dim x() As Integer Dim i,n As Integer n = Val(InputBox("请输入项数n:")) Redim x(n) x(0)=0:x(1)=1: For i = x(i) = x(i - 1) + x(i - 2) Next
    A、2 To n
    B、0 To n
    C、1 To n
    D、n To0 2
    E、0 To n-2

10、使用ReDim语句可以重新定义数组的大小和类型。

11、数组元素的下标可以是整型常量,也可以是整型变量。

12、数组a中有6个元素,随机生成,查找数组中最大元素及其下标。 在空白处填入合适的表达式,使程序完整。 Dim a(5) As Integer, i%, imax%, max% Label1.Text = "" For i = 0 To 5 a(i) = Int(Rnd() * 99 + 1) Label1.Text &= a(i) & " " Next max = a(0) imax = 0 For i = 1 To 5 If a(i) > max Then max = a(i) imax = ________ End If Next MsgBox("最大值:" & max & "下标:" & imax)

13、若一数组中各元素值为 {8 6 3 9 2 7},则利用冒泡排序的方法(按升序、大数沉底),经过一轮排序后,数组元素值8在数组中的下标值为 。