VB第4章 复习资料
VB第04章Word版
第四章算法基础及VB的基本语句的知识点习题考点详细分析1、能写一些简单的算法,明白算法即是一解题步骤2、赋值语句和input和msgbox函数注意不同类型数据的赋值转换,俩函数的参数3、分支结构与分支结构语句if语句的三种转换形式select-case-end select结构语句的使用4、循环结构与循环结构语句do-loop结构语句(当型与直到型在条件不满足时区别)for-next结构语句(注意循环控制参数)循环嵌套(初值的位置、随机函数的使用)(关于算法)明白算法就是给出解决问题的步骤给出下列题目的算法:1、给出一个求一元俩次方程根的算法(ax2+bx+c=0)2、求一个圆的周长和面积3、根据个人工资给出交税数目4、设计一个判断某正整数是一个回文数的算法。
(回文数:该数的左右数字完全对称的自然数,如121、1551等)(关于赋值语句和俩函数)1、赋值语句的一般形式__变量名=表达式__2、当系统执行一个赋值语句时,先求出“=”_右边表达式______的值,然后再把该值保存到“=”___左边变量___中,这就是“赋值”分析:基本概念答案:右边表达式左边变量3、针对语句 If I=1 then J=1,下列说法正确的是__C__ (03春)A.I=1 和J=1均为赋值语句B.均为关系表达式C.I=1为关系表达式,J=1为赋值语句D.I=1为赋值语句,J=1为关系表达式分析:基本结构语句答案:C4、运行下面的程序,单击命令按钮command1,则立即窗口上显示的结果是__A__(03春)private sub command1_click()dim A as integer,B as Boolean,C asInteger,D as integerA=20/3:B=true:C=B:D=A+CDebug. Print A, D,;A=A + CEnd subA、7 6 FalseB、6 6 5.6FalseC、7 6 A=6D、78 A=8分析:不同数据类型赋值问题答案:A5、在文本框Text1中输入数字12,Text2中输入数字34,执行以下语句,只有__B______可使文本框Text3中显示46。
VB04
$
E+
在数字前强加$
用指数表示
1234.567
1234.567
"$###.##"
"0.00E+00"
$1234.5陈思佳
5. Format格式输出函数
常用日期和时间格式符
符号 d 显示日期 ,dd个位前加0 作 用
w
m
星期为数字(1是星期日)
显示月份,mm个位前加0
yyyy
dddddd h m s
显示4位数年份,yy为2位数年份
显示完整长日期(yyyy年m月d日) 显示小时(0~23),hh个位前加0 在h后显示分(0~59),mm个位前加0 显示秒(0~59),ss个位前加0
VB程序设计教程
陈思佳
CH4-24
Format函数示例
利用Format函数显示数值。
4. 注释有利于程序的维护和调试;
• Rem开始 或 单引号 ‘ VB程序设计教程 陈思佳 内容以绿色显示
6
二、命令格式中的符号约定
(1)< >:必选参数表示符,该项必须根据具体问题选择
一个确定的参数,在输入时“< >”本身不要输入;
(2)[ ]:可选参数表示符,表示方括号中的内容可根据需
要选或不选;
过程块结构, 位置先后没 有关系
VB程序设计教程
陈思佳
5
一、编码规则
1. VB代码不区分字母的大小写;
2. 语句自动转换;
• 系统保留字自动转换为每个单词首字母大写 • 用户自定义过程名/变量名,以第一次为准
3. 语句书写自由;
• 一行可书写多条语句,之间用冒号分隔; • 一条语句可分若干行书写,用续行符 _ 连接 • 一行<=255个字符
vb4
3、循环的嵌套 在一个循环语句的循环体内又包含了一个完整的 在一个循环语句的循环体内又包含了一个完整的 循环结构就是循环的嵌套。 循环结构就是循环的嵌套。循环嵌套对 For 循环语句 Loop语句均适用。 和Do…Loop语句均适用。 Do Loop语句均适用 在构造循环嵌套时,要注意: 在构造循环嵌套时,要注意: (1)内循环变量与外循环变量不能同名。 内循环变量与外循环变量不能同名。 (2)外循环必须完全包含内循环,不能交叉。 外循环必须完全包含内循环,不能交叉。 例如: 例如:For ii=1 To 10 For jj=1 To 20 …… Next ii Next jj
2 、与用户交互函数和过程
VB与用户直接交互是通过 InputBox 函数、MsgBox 与用户直接交互是通过 函数、 过程进行的。 函数和 MsgBox 过程进行的。 (1)、InputBox函数 )、InputBox函数 InputBox InputBox(提示[ 标题][,缺省][,X坐标][,Y坐标] InputBox(提示[,标题][,缺省][,X坐标][,Y坐标]) 提示 ][,缺省][,X坐标][,Y坐标
Then…ElseIf 语句(多分支结构) 3、If…Then ElseIf 语句(多分支结构) If Then 语句形式为: 语句形式为: <表达式 表达式1> (1) If <表达式1> Then <语句块1> 语句块1 <表达式 表达式2 ElseIf <表达式2>Then <语句块2> 语句块2 … … [Else <语句块n+1> ] 语句块n+1> End If 该语句的作用是,根据不同的表达式确定执行哪个语句。 该语句的作用是,根据不同的表达式确定执行哪个语句。
vb学习文档第4章
程序设计教程
本书目录 本章目录
18
MsgBox所选按钮返回值 枚举名 MsgBoxRetry
例4.3 编一账号和密码输入的检验程序,当输入不正 确,如账号为非数字字符,密码不正确等,显示有关 信息,再输入。
程序设计教程
本书目录 本章目录
19
3.Write、WriteLine方法
TextBox1.Text = "" ' 清除文本框的内容
TextBox1.Text = "欢迎使用"
程序设计教程
本书目录 本章目录
8
复合赋值语句
复合赋值运算符,其作用简化程序代码,提高 程序编编译的效果。语句形式:
变量名 复合赋值运算符 表达式
首先计算右边表达式的值,然后与左边的变量 进行相应的运算,最后赋值给变量。
赋值号左边只能是变量,不能是常量、常数 符号、表达式。下面均为错误的赋值语句:
Now() = x + y
'左边是表达式(函数)
5 = sqrt (s) + x + y '左边是常量
x+y=z
'左边是表达式
程序设计教程
本书目录 本章目录
11
4.1.3 数据输出和输入
1. InputBox函数 打开一个对话框,等待用户输入,返回字符串 类型的输入值。 函数形式: InputBox(提示[,标题][,默认值][,x坐标位置] [,y坐标位置])
本书目录
4
(3)循环结构
根据条件重复执行语句(称为循环体)
a
a
条件 成立 ?
循环体
b
不成立
不成立
循环体
VB-第4章-VB语言基础
注意:为了与字符串型常量相区分,所以用#将日期常量括起来
VB语言基础
13
业,精于勤,荒于嬉
业,精于勤,荒于嬉
(5)符号常量
常量在程序中也可以用符号表示 目的是为了…… 代表常量的符号称为“常量名” 常量名的命名规则是: 1、不超过255个字符 2、只能由字母、数字和下划线组成并且首字符必须是字母的字符串 3、常量中字母大小通杀(不区分大小写)。 比如: Const PI As single=3.14159 ‘声明了常量PI,代表3.14159,单精度型 Const MAX As Integer=&O144 ‘声明了常量MAX,代表八进制数144,整型 Const COUNT#=45.67 '声明了常量COUNT,代表45.67,双精度型
业,精于勤,荒于嬉
4、可以用(Const )语句来定义符号常量。 5、可以在常量的后面加上类型说明符以显示常量 的类型,可以用( $ )表示字符串型常量。 6、下列是合法的VB变量名的是(A) A:a2 B:2a C:int sum D:2*a 7、下列各项不是VB基本数据类型的是(A) A:Char B:String C:Integer D:Double
Private Sub Command1_Click() Dim liming As string End Sub Private Sub Command2_Click() Dim liming As string End Sub
VB语言基础
19
业,精于勤,荒于嬉
窗体/模块级变量
业,精于勤,荒于嬉
VB语言基础
10
业,精于勤,荒于嬉
业,精于勤,荒于嬉
3)理解数值的范围
VB 语言基础
了灵活性。
上一页 下一页 返回
4.1 数 据 类 型
• 在VB 中对所有未定义的变量都默认为是变体型的。 • 在对Variant 变量进行数学函数运算时,该变量必须包含某个数,在
除以分母的形式,如( a – b ) / ( c + d )。在这里分子与分母都分别加 上了括号,并且只允许使用圆括号。
上一页 下一页 返回
4.4 运算符与表达式
• ② 乘法要明确写出乘号,如2ab 应写为2 * a * b。
• 4.4.2 关系运算符与关系表达式
• 关系表达式是对两个表达式进行比较,其结果为一逻辑值:True( 真)或False(假)。
变类型变量中可以存放任何类型的数据,如数值、字符串、日期和时 间。 • 为了保证所有的变量都先声明后使用,可以使用VB 中的强制声明功 能,这样,只要在运行时遇到一个未经声明的变量,VB 就会发出错 误警告。
上一页 下一页 返回
4.3 变 量
• 要强制显式声明变量,可以在窗体模块或标准模块的声明段中加入语 句:
型变量或Variant 型变量赋初值为空串,将布尔型变量赋初值为 False。 • 2.用数据类型符声明变量 • 在VB 中为了方便可以在变量名后加数据类型符来直接声明变量,数 据类型符有:
上一页 下一页 返回
4.3 变 量
• %—整型; &—长整型; !—单精度型; • #—双精度型; @—货币型; $—字符型。 • 3.强制显式声明 • 如果一个变量未经定义而直接使用,则该变量为可变类型变量。在可
下一页 返回
4.1 数 据 类 型
VB第4章
开封大学五专部
4.1.2 静态数组
2. 多维数组
【例4-2】某小学六个年级各有8个班,可以用 】 下面的方法声明一个数组students用于存放每 个班的人数。 Static students(5, 7) As Integer 或者也可以这样声明: Static students(1 To 6, 1 To 8) As Integer 如果每个班级都是40人,可以用以下过程将人 数填入数组students,运行结果如图4-2所示。
开封大学五专部
第4章 数组与过程
4.1 数组 4.2 过程
开封大学五专部
Байду номын сангаас
4.1 数组
4.1.1 4.1.2 4.1.3 4.1.4 4.1.5 数组的概念 静态数组 动态数组 控件数组 数组的基本操作
开封大学五专部
4.1.1 数组的概念
1. 数组的基本概念 数组是具有相同数据类型的元素所组成的有序集合, 可以用数组名及下标惟一地识别一个数组的元素。 2. 数组的下标和维数 数组的下标即数组的索引,它规定了数组中元素的个 数和位置,其下标值惟一地标识了一个数组元素。 数组的下标个数称为数组的维数。 3. 数组的数据类型和大小 作为变量,数组也具有数据类型。数组的类型就是数 组中各元素的数据类型,同一数组中的所有元素具有 相同的数据类型。
开封大学五专部
4.1.2 静态数组 2. 多维数组
在声明时,数组有两个或两个以上的下标,则该数组 即为多维数组。 多维数组的定义: Dim 数组名([下标 To] 上界,[[下标 To] 上界, ...]) [As 数据类型] 声明多维数组可以使用逗号分隔符分隔多个数组的下 标。 例如: Dim iArray(0 To 3, 0 To 4) As Integer Dim iArray(3, 4) As Integer 分析表4-1(61页)
vb4VB语言基础
为了使变量 bj 在两个事件过程中都起作用, 在两个事件过程中都起作用, 必须在窗体级说明这一变量。 必须在窗体级说明这一变量。 声明” 在“通用_声明”栏对变量说明: 通用 声明 栏对变量说明: Dim bj As Single
Dim bj As Single Private Sub ml1_Click() bj = InputBox("请输入你的本金数!", "输入框", 0) bq2.Caption = bj End Sub Private Sub ml2_Click() For t = 1 To 10 i = bj * 0.125 bj = bj + i Next t bq4.Caption = Format(bj, "####.00") End Sub
2. 字符串函数
Len(字符串 字符串) 字符串 求字符串的长度 Lcase(字符串 字符串) 字符串 将字符串中的所有字母变成小写 Ucase(字符串 字符串) 字符串 将字符串中的所有字母变成大写 Ltrim$(字符串 字符串) 字符串 去除字符串左边的空格 Rtrim$(字符串 字符串) 字符串 去除字符串右边的空格 Left$(字符串 n) 取字符串左边 个字符 字符串, 取字符串左边n个字符 字符串 Right$(字符串 n) 取字符串右边 个字符 字符串, 取字符串右边n个字符 字符串 Mid$(字符串 字符串,p,n) 从p位置开始向右取字符串的 个字符 位置开始向右取字符串的n个字符 字符串 位置开始向右取字符串的 Space$(n) 产生n个空格 产生 个空格 String$(n, 字符串 返回由字符串中首字符组成的 个字符的字符串 字符串) 返回由字符串中首字符组成的n个字符的字符串 InStr([起始位置 字符串 字符串 在串 中找串 若找到 返回 起始位置],字符串 字符串2) 中找串2, 起始位置 字符串1,字符串 在串1中找串 若找到,
VB教程第4章
Dim myArray(4, 4) As Integer ' 在窗体级模块声明一个二维数组 ' 命令按钮"生成数组"的Click事件,生成一个二维数组 命令按钮"生成数组" 事件, 事件 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) _Handles Button1.Click Dim i, j As Integer ' 声明循环体变量 Dim str As String = "" ' 声明用来数组显示的字符串变量 For i = 0 To 4 For j = 0 To 4 myArray(i, j) = Int(Rnd() * 90) + 10 str = str & "myArray" & "(" & i & " , " & j & ")" & " = " & myArray(i, j) & Chr(10) Next Next RichTextBox1.Text = str ' 数组赋值给多行文本框显示 End Sub
Preserve参数用来保留现有数组中的数据. Preserve参数用来保留现有数组中的数据. 参数用来保留现有数组中的数据
例如: 例如: ' 声明 声明MyArray为二维数组 为二维数组 Dim MyArray(,) As Double ' 声明MyArray二维数组的元素个数 声明 二维数组的元素个数 ReDim MyArray(5, 5)
(VB二级)第4章 VB语言基础
(5)求余运算a Mod b,a、b一般为整数, 若a或b带有小数点时,VB首先对其四舍五入 (按照“奇进偶不进”原则处理)。a Mod b的 符号由a的符号确定,当a为正数时a Mod b 为正数;当a为负数时,a Mod b为负数。 例如:-13 Mod 6=-1,而13 Mod –6=1。如 果a、b都是Integer型,运算结果是Integer 型,否则运算结果为Long型。 (6)参加算术运算的操作数都应是数值型, 若是字符型或逻辑型,则系统自动将其转换 成数值型后再运算。
4.4.1 算术运算符
算术运算符
运算符 ^ * / \ Mod + 名称 乘方 取负 乘 除 整除 取余 加 减
设a=3
优先级 例 结果 1 a^2 9 2 -a -3 3 a*a 9 3 10/a 3.333 4 10\a 3 5 10 mod a 1 6 10+a 13 6 10 - a 7
4.1.7 使用缩进格式
Private Sub Form_Click( ) x = Val(InputBox("请输入x的值")) If x > 0 Then Print "x > 0" Else Print "x < 0" End If End Sub
4.2 使用适当的数据类型来自(2) 乘方运算a^b,若a为负数则b必须是整数, 例如(-8)^(1/3)是错误的。乘方运算的结果是 Double型。
(3)除法运算a/b,无论a、b是整型还是实型, VB都将a、b转换为Double型数据再进行运算, 其结果是Double型。 (4)整除运算a\b,a、b一般为整数,若a或 b带有小数点时,VB首先将其四舍五入为整数 (注意,这里的四舍五入按“奇进偶不进”的原 则进行)。 例如:3.5\2=2,而4.51\2=2。),然后进 行整除运算。运算结果简单地截取整数部分,小 数部分不作四舍五入处理。如果a、b都是 Integer型,运算结果是Integer型,否则运算结 果为Long型。
(VB)第4章(VB)
回
• • • • •
顾 ……
Visual Basic的集成开发环境 Visual Basic中常用的基本控件 创建VB应用程序的基本步骤 数据类型、常量、变量 运算符、表达式、常用函数
第4章 顺序结构(Sequential Structure) 程序设计
• • • • • • • • 4.1 4.2 4.3 4.4 4.5 4.6 4.7 4.8 Visual Basic编程风格 算法及其描述 赋值语句 注释、暂停与程序结束 数据输入 数据输出 字体、字形及颜色 打印机输出 (略)
下执行; 下执行;
– ⑸ 输出 ,即N!。 输出R, !。
算法的特征(Character) 算法的特征
– – – – –
有穷性 确定性 有效性 零个或多个输入 至少一个输出
算法的描述(Description) 算法的描述
自然语言
流程图
N—S图 图
4.2.2 程序的基本结构
– 顺序结构(Sequence) – 选择结构 选择结构(Selection)
4.6 数据输出(Data Output)
一、Print方法 方法
格式:[对象名 Print [表达式表 对象名.] 表达式表] 格式: 对象名 表达式表 说明: 说明: 1、“对象名”可以是窗体、立即窗口、图片框、 对象名”可以是窗体、立即窗口、图片框、 打印机,若省略对象名在当前窗体上输出。 打印机,若省略对象名在当前窗体上输出。 2、“表达式表”是一个或多个表达式,可为数 表达式表”是一个或多个表达式, 值表达式(求出表达式的值输出)或字符串( 值表达式(求出表达式的值输出)或字符串(原样输 )。若省略 则输出一空行。 若省略, 出)。若省略,则输出一空行。 3、多个表达式之间可以用以下分隔符隔开: 多个表达式之间可以用以下分隔符隔开: 标准输出格式, 14列作为一个输出区段 ,标准输出格式,每14列作为一个输出区段 ;紧凑格式输出
VB4第四章
过程、对话框及菜单 过程、
VB程序设计基础教程—第四章 程序设计基础教程
1
本章主要内容
VB的代码模块 VB的代码模块 VB的过程 VB的过程 对话框的分类及应用 菜单设计及应用
VB程序设计基础教程—第四章 程序设计基础教程
2
VB的代码模块 VB的代码模块
3.VB 提供三类模块 , 它们是窗体模块 、 标准模 类模块:是面向对象编程的基础。在类模块中可以 提供三类模块, 它们是窗体模块、 类模块::是大多数VB应用程序的基础 窗体模块:是大多数VB应用程序的基础。 1 VB提供三类模块 VB应用程序的基础。窗体模块 窗体模块是面向对象编程的基础。 编写建立新对象的代码。 编写建立新对象的代码 。 这些新对象可以包含自定义 类模块。VB的所有代码都存储在模块中 的所有代码都存储在模块中。 块、类模块。VB的所有代码都存储在模块中。 包含声明部分、 事件过程部分和通用过程部分。 包含声明部分 、 事件过程部分和通用过程部分 。 声明 的属性和方法。类模块文件扩展名为.CLS。 的属性和方法。类模块文件扩展名为.CLS。 部分位于最前面,用Dim语句声明变量。窗体模块文件 部分位于最前面, Dim语句声明变量。 语句声明变量 只包括一个窗体的简单应用程序, 只包括一个窗体的简单应用程序 , 程序的所有代码都 扩展名为.FRM。 扩展名为.FRM。 存储在窗体模块中; 对于具有多个窗体的程序时, 可 存储在窗体模块中 ; 对于具有多个窗体的程序时 , 标准模块:包括全局变量声明、 2.标准模块:包括全局变量声明、模块级声明和通用 能在几个窗体中都有要执行的公共代码, , 模块级声 能在几个窗体中都有要执行的公共代码 , 为了避免两 过程等几部分。 全局变量声明位于最前面, 过程等几部分 。 全局变量声明位于最前面 个窗体中出现重复代码, 可以创建一个标准模块, 在 个窗体中出现重复代码的 可以创建一个标准模块量 用 明 在 标 准 模 块 中 使ቤተ መጻሕፍቲ ባይዱ用 ,常 量 和 变 量 , 全 局 变 , 其中包含实现公共代码的过程。 其中包含实现公共代码的过程。 或 Private 声明 。 标 Public声明 而模块层变量用Dim 声明, Dim或 声明。 Public 声明 , 而模块层变量用 Dim Private声明 准模块文件扩展名为.BAS。 准模块文件扩展名为.BAS。
VB-第4章
27
2. 字符串运算符
字符串运算符有两个:“&”、“+”,是将两个字 符 串连接起来,合并成一个新的字符串。 注意: “&”和“+”这两个运算符的区别:“+”运算符两边 的操作数应均为字符串。如果都为数值型,则进行 算术运算;如果有一个为字符串,另一个为数值型, 则出错。“&’’运算符两边的操作数不论是数值型 的还是字符串型的,都进行字符串的连接运算,系 统先将数值型操作数转换为字符串,然后再进行连 28 28 接运算。
例: "100" + 123 "100" + "123" " Abc" + 123 " 100" & 123 100 & 123 " Abc" & "123" " Abc" & 123
29
29
3.关系运算符
关系运算符都是双目运算,是用来比较两个运算量之 间的关系,关系表达式的运算结果为逻辑量。若关系 成立,结果为True,若关系不成立,结果为False。
当两个操作数均为真时,结果才为真 (3>8) And (5<6) 当两个操作数均为假时,结果才为假 (3>8) Or (5<6) 当两个操作数不等价时,结果为真 (3>8) Xor (5<6) (3>8) Eqr (5<6) (3>8) Imp (5<6)
同或
蕴含
当两个操作数值等价时,结果为真
如果A则B
运算符 < <= > >= 含义 小于 小于或等于 大于 大于或等于 优先级 所有关系运算 优先级相同。 低于算术运算 的加“+”,减 “-”运算,高 于逻辑非 “Not”运算。 实例 15+10<20 10<=20 10>20 "This">= "That" 结果 False True False True
VB第4章详细介绍
结束
4.3 循环结构
3. 循环的嵌套
在一个循环中又完整地包含另一个循环 对于循环的嵌套,要注意以下事项: 对于循环的嵌套,要注意以下事项: (1)内循环变量与外循环变量不能同名; )内循环变量与外循环变量不能同名; (2)外循环必须完全包含内循环,不能交叉; )外循环必须完全包含内循环,不能交叉; (3)不能从循环体外转向循环体内,也不能从 )不能从循环体外转向循环体内, 外循环转向内循环,反之则可以。 外循环转向内循环,反之则可以。
例:根据用户输入 根据用户输入 的成绩, 的成绩,评定学生 的成绩等级。 的成绩等级。
4.2 选择结构
2. Select语句 语句
Select Case <测试表达式 测试表达式> 测试表达式 [Case <条件表达式 条件表达式1> 条件表达式 [ <语句块 ] ] 语句块1> 语句块 [Case <条件表达式 条件表达式2> 条件表达式 [ <语句块 ] ] 语句块2> 语句块 …… [Case <条件表达式 条件表达式n> 条件表达式 [ <语句块 ] ] 语句块n> 语句块 [Case Else [ <语句块 语句块n+1> ] ] 语句块 End Select
4.3 循环结构
2. For … Next循环 循环
格式: For < 循 环 变 量 > = < 初 值 > To < 终 值 > [ Step步长 步长] 步长 [循环体 循环体] 循环体 [Exit For] Next [循环变量 循环变量] 循环变量 For x = 1 to 50 Step 1 sum = sum + x 例如: Next x
VB第4章第1节-2
图像列表的图像集对象主要属性 (ImageList.ImageCollection) Count:获取列表中的当前图像数。
图像列表的图像集对象主要方法 (ImageList.ImageCollection) Add:将指定对象添加到图像列表中。 Clear:从图像列表删除所有图像和屏蔽。 RemoveAt:从图像列表中删除图像。
第4章第1节
例4-6 运行后,要求输入图像文件名
第4章第1节
4.1.4 其他控件
一、滚动条控件 为无滚动条的容器(如图片框)实现滚动,或为用 户输入数值数据实现滚动。 主要属性 LargeChange:单击滚动条空白处围的上限值。
Minimum:获取或设置可滚动范围的下限值。
第4章第1节
主要事件 Click:单击控件时发生该事件。 DoubleClick:双击控件时发生该事件。
KeyPress:控件有焦点时,按下键盘按键时发生该事 件。
第4章第1节
列表框对象集(ListBox.ObjectCollection)的主 要方法
Add:向列表框添加项目。
Clear:删除列表框的所有项目。
Text:组合框的文本。 MaxDropDownItems:组合框的下拉部分中显示的最 大项数。 MaxDropDownWidth:组合框下拉部分的宽度(以像 素为单位,下拉部分的宽度不能小于组合框的宽 度)。
第4章第1节
应用示例 例4-3 列表框和组合框的应用(1) 例4-4 列表框和组合框的应用(2)
第4章
本章重点
学习界面的设计
窗体与控件
熟练掌握基本控件的属性、事件、方法及应用 掌握菜单和工具栏的应用 掌握窗体的应用
第4章第1节
4.1.1 文本类控件
vb4
第四章 基本控制语句
第四章 基本控制语句
程序设计语言的三种结构: 顺序 选择 循环
4.1 顺序结构
例: n%=“123” n%=“a123” n%=true a$=1234 a$=1234a s=s+1 x=y=z=1 ‘转换为 整数 出错 n为-1 a为“1234” 出错 x=((y=z)=1)
4.3 选择结构
4.3.3 条件函数 1. IIf函数 IIF(条件表达式,值1,值2) 条件表达式值为真时为值1,否则为值2 如:IIF(x>y,x,y) 2. Choose函数 Choose(整数表达式,选项列表) 整数表达式为1,列表第1项,... ... ... op=Choose(nop,”+”,”-”,”×”,”÷”)
常用算法( 4.5 常用算法(一)
1. 累加 1~100的5或7的倍数的和 Sum = 0 For i = 1 To 100 If i Mod 5 = 0 Or i Mod 7 = 0 Then Sum = Sum + i End If Next i Print Sum 连乘 3~10的乘积 t=1 For i =3 To 10 t=t*i Next i Print t
4.3 选择结构
闰年 否则 不是闰年 如果结束
判断闰年
如果 年份除以400整除 或者 (除以100不整除 并且 除以4整除) 那么
If y Mod 400 = 0 Or (y Mod 100 <> 0 And y Mod 4 = 0) Then Print y & "是闰年" Else Print y & "不是闰年" End If
VB第4章 复习资料
第4章补充资料习题解答1.计算下列循环语句的次数:(1)For I= -3 To 20 Step 4答:循环次数为6次。
循环体内I的值分别为:-3,1,5,9,13,17;出了循环体后I 的值为21。
(2)For I= -3.5 To 5.5 Step 0.5答:循环次数为19次。
(3)For I= -3.5 To 5.5 Step -0.5答:不循环,步长<0,循环初值<终值。
(4)For I= -3 To 20 Step 0答:无数次,步长=0。
2. 下列30~90为语句标号,分别标记该语句,第40号语句共执行了几次,第50号语句共执行了几次,执行第90号语句后显示的结果是多少?30 For j = 1 To 12 Step 340 For k =6 To 2 Step -250 mk = k60 Print j,k70 Next k80 Next j90 Print j , k , mk答:第40号语句共执行了4次,是外循环的循环体;第50号语句共执行了12次,是内循环的循环体,循环次数为两重循环次数的乘积;第90号语句显示的结果是13 0 2。
3.如果实现不知道循环次数,如何用For …Next 结构来实现?答:只要将循环的终值设置成一个非常大的值,然后再循环体内增加If语句,判断是否满足循环结束的条件。
形式如下:For 循环变量=1 To 非常大的数…If 满足循环结束条件Then Exit For…Next 循环变量4.利用循环结构,实现如下功能:(1)∑=+ +=101)12)(1(ii is答:s =0For i =1 To 10s = s +( i+1)*(2* i +1)Next i(2)分别统计1~100中,满足3的倍数、7的倍数的整数各有多少?答:s3=0s7=0For i =1 to 100If i mod 7=0 Then s7=s7 +1If i mod 3=0 Then s3=s3+1Next i(3)将输入的字符串以反序显示。
VB第4章第1节-1
第4章第1节
Lines:获取或设置文本框中的多行文本. ScrollBars:获取或设置多行文本框中的滚动条. TabIndex:获取或设置控件的 Tab 键顺序. TabStop:能否使用 TAB 键将焦点放到该控件上. TextLength: (只读,编程)获取控件中文本的长度. WordWrap:多行文本框是否自动换行.
第4章第1节
4,复制控件: ,复制控件: 选中要复制的控件, 复制" 粘贴 粘贴" 选中要复制的控件, "复制"/"粘贴" 5,删除控件:选中控件后,按Del键. ,删除控件:选中控件后, 键 6,同时选中多个控件: ,同时选中多个控件: 1)方法一 :按住 按住Shift(或Ctrl)键,同时单击每个 ) ( ) 要选择的控件. 要选择的控件. 2) 方法二 : 拖动鼠标 , 拉出一个虚线矩形 , 松开左 ) 方法二: 拖动鼠标, 拉出一个虚线矩形, 键后,在矩形内的所有控件都被选中. 键后,在矩形内的所有控件都被选中.
第4章第1节
二,文本框:主要用于输入,显示,编辑文本 文本框:主要用于输入,显示, 主要属性 MaxLength:获取或设置文本框的最大字符数. :获取或设置文本框的最大字符数. 最大字符数 Multiline:是否显示或输入多行文本. :是否显示或输入多行文本. 多行文本 PasswordChar:获取或设置文本框的替代字符. :获取或设置文本框的替代字符. 替代字符 SelectedText : (编程 获取或设置文本框中选定的 编程) 编程 获取或设置文本框中选定的 文本. 文本. SelectionLength:(编程 获取或设置文本框中选定 : 编程 获取或设置文本框中选定 编程) 的字符数. 的字符数. SelectionStart:(编程 获取或设置文本框中选定的 : 编程 获取或设置文本框中选定的 编程) 文本起始点. 文本起始点.
4 VB程序设计基础
计算机软件技术基础 Visual Basic 程序设计
3.Rem、Stop、End语句 ⑴ Rem语句 P76
格式:Rem 注释内容 或 ˊ 注释内容 功能:用来在程序中加入注释内容。 说明:① 注释内容可以是包含任何注释文本的内容。Rem和注 释内容之间要加一个空格。
第4章 VB程序设计 基础
计算机软件技术基础 Visual Basic 程序设计
本章主要内容
Visual Basic语言作为结构化程序设 计语言,提供了三种控制流来控制程序 的流程:顺序,条件分支和循环语句。 本章重点介绍三种结构程序设计的特点 和方法,并讲解常见算法的程序实现。计算机软件技术基源自 Visual Basic 程序设计
计算机软件技术基础 Visual Basic 程序设计
① 数值格式化 数值格式化是将数值表达式的值按“格式字符串”指
定的格式输出。 ② 日期和时间格式化
将日期或数值表达式的值按“格式字符串”指定的格 式转换。 ③ 字符串格式化
将字符串按指定的格式进行转换。 上述三种格式符请参考课本P72、P73页表格。
错。例如;
n%=“123” ‘n中的结果是123,与n%=Val(“123’)效果相同
n%=“1a23” ‘出现“类型不匹配”的错误
④ 赋值语句中的“=”与关系运算符中的“=”的作用截然不同。
例如: A=7=9 其中,
第一个“=”是赋值运算符,第二个“=”是关系运算符。
赋值语句a=b和b=a是两个结果不同的赋值语句;而在关系
为0;反之,当数值型赋给逻辑型时,非0转换为True,0转换
为False.
⑦ 任何非字符类型的值赋给字符变量时,系统自动转换
VB基础(第四章)
①DO、Loop及While、Until都是关键字。“语句块”是需要重复执行的 一个或多个语句,即循环体。“循环条件”是一个逻辑表达式。 ②DO和Loop构成了DO循环。当只有这两个关键字时,程序将不停地执 行语句块。为了使程序按指定的次数执行循环,必须使用可选的关键字 While或Until以及Exit Do。While是当条件为真是执行循环,而Until正 好相反。 ③在格式中将While和Until放在循环开头,分别叫Do Whil—Loop循环 和Do Until—loop循环。对于此种循环,先判断后循环。 ④如果条件总成立,Do循环可能陷入死循环,可用Exit Do语句跳出。 ⑤Do循环可以嵌套,其规则同For循环。
第四章 语句与控制结构
4.1语句及书写规则
4.2顺序结构
4.3选择结构
4.4循环结构
4.1
语句及书写规则
①每个语句占一行以回车结束。 ②多个语句写在同一行时,各个语句用冒号分开。 ③一个语句可以写在多行,各行(除最后一行)末尾用下划线表示续 行,续行符和它前面的字符之间至少有一个空格。 ④语句中的命令词、函数、变量名、对象名不必区分大小写。 ⑤一个语句行的长度最多不能超过1023个字符。
4.1语句及书写规则
4.2顺序结构
4.3选择结构
4.4循环结构
4.4 循环结构 4.4.1 For---Next循环 格式:
For 循环变量=初值 To 终值
[循环体] [Exit For] Next [循环变量பைடு நூலகம்[,循环变量] FOR语句的嵌套使用
[Step 步长值]
4.1语句及书写规则
4.2顺序结构
语句块1 [Elseif 条件2
then
Then
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第4章补充资料习题解答1.计算下列循环语句的次数:(1)For I= -3 To 20 Step 4答:循环次数为6次。
循环体内I的值分别为:-3,1,5,9,13,17;出了循环体后I 的值为21。
(2)For I= -3.5 To 5.5 Step 0.5答:循环次数为19次。
(3)For I= -3.5 To 5.5 Step -0.5答:不循环,步长<0,循环初值<终值。
(4)For I= -3 To 20 Step 0答:无数次,步长=0。
2. 下列30~90为语句标号,分别标记该语句,第40号语句共执行了几次,第50号语句共执行了几次,执行第90号语句后显示的结果是多少?30 For j = 1 To 12 Step 340 For k =6 To 2 Step -250 mk = k60 Print j,k70 Next k80 Next j90 Print j , k , mk答:第40号语句共执行了4次,是外循环的循环体;第50号语句共执行了12次,是内循环的循环体,循环次数为两重循环次数的乘积;第90号语句显示的结果是13 0 2。
3.如果实现不知道循环次数,如何用For …Next 结构来实现?答:只要将循环的终值设置成一个非常大的值,然后再循环体内增加If语句,判断是否满足循环结束的条件。
形式如下:For 循环变量=1 To 非常大的数…If 满足循环结束条件Then Exit For…Next 循环变量4.利用循环结构,实现如下功能:(1)∑=+ +=101)12)(1(ii is答:s =0For i =1 To 10s = s +( i+1)*(2* i +1)Next i(2)分别统计1~100中,满足3的倍数、7的倍数的整数各有多少?答:s3=0s7=0For i =1 to 100If i mod 7=0 Then s7=s7 +1If i mod 3=0 Then s3=s3+1Next i(3)将输入的字符串以反序显示。
如输入“ASDFGHJKL”,显示“LKJHGFDSA”。
答:s=InputBox(“输入字符串”)For i =Len(s) To 1 Step -1Print Mid(s,i,1);Next i5.下面程序的运行结果是什么?该程序的功能是什么?Private Sub Command1_ Click( )Dim x$,n%n = 20Do While n <>0a = n Mod 2n = n\2x = Chr(48 + a)& xLoopPrint xEnd Sub答:运行后结果为10100,该程序的功能是将十进制数转换成二进制字符串。
6.下面程序的运行结果是什么?该程序的功能是什么?Print Sub Command1_Click( )Dim x%,y%,z%x = 242: y = 44z =x * yDo Until x = yIf x > y Then x = x – y Else y = y – xLoopPrint x, z/xEnd Sub答:运行结果为22和484;该程序的功能是用相减法求x,y的最大公约数和最小公倍数。
7.利用随机函数产生50~100范围内的20个随机数,现实其中的最大值、最小值和平均值。
Private Sub Form_Click( )Dim i%, min% , max% , avg%, x%min = 100 ‘设置最小值、最大值和平均值的初态max = 50avg = 0For i = 1 To 20x = Int(Rnd * 51+50)Print x;If x > max Then max = xIf x < min Then min = xavg =avg + xNext iPrintPrint “最小值=”;min , “最大值 =”;max, “平均值=”;avg/20 End Sub常见错误和难点分析1.一般循环控制变量在循环体内可以引用但不要被赋值如在循环控制变量的引用和赋值将影响循环次数,引起混乱,效果如图4.1所示。
Private Sub Command1_Click( )Print “单击Command1输出:”For i = 1 To 20s = s + i ‘循环控制变量i被引用,正确使用 Print I;Next iPrintEnd SubPrivate Sub Command2_Click( )Print “单击Command2输出:”For i = 1 To 20i = i + 2 ‘循环控制变量i被赋值,改变了循环次数,不正确使用 Print I;Next iPrintEnd Sub图4.1 循环控制变量引用和赋值的两种使用方式运行效果2.不循环或死循环的问题出现不循环或死循环的情况主要是循环条件、循环初值、循环终值、循环步长的设置有问题。
例如,以下循环语句不执行循环体:For i =10 To 20 Step -1 ‘步长为负,初值必须大于等于终值,才能循环For i =20 To 10 ‘步长为正,初值必须小于等于终值,才能循环Do While False ‘循环条件永远不满足,不循环例如,以下循环语句为死循环:For i =10 To 20 Step 0 ‘步长为0,死循环Do While 1 ‘循环条件永远满足,死循环3.循环结构中缺少配对的结束语句For···Next 语句没有配对的Next语句;Do语句没有一个终结的Loop语句等。
4.循环嵌套时,内外循环交叉For i = 1 To 4For j =1 To 5···Next iNext j上述循环体的交叉,运行时显示“无效的Next控制变量引用”。
外循环必须完全包含内循环,不得交叉。
5.循环结构与If块结构交叉For i =1 To 4If 表达式 Then···Next iEnd If错误同上,正确的做法应该为If结构完全包含循环结构,或者循环结构完全包含If 结构。
6.累加、连乘时,存放累加、连乘结果的变量赋初值的问题(1)一重循环在一重循环中,存放累加、连乘结果的变量初值设置应放在循环语句前。
例如,求1~100之间的3的倍数之和,结果存入Sum变量中,如下程序段的输入结果如何?Private Sub Form _Click( )For i =3 To 100 S tep 3Sum =0Sum = Sum + iNext iPrint SumEnd Sub要得到正确的结果,应如何改进?(2)多重循环在多重循环中,存放累加、连乘结果的变量初值设置应放在外循环语句前,还是内循环语句前,这要视具体问题分别对待。
例如,30位学生参加三门课程的期末考试,以下是用程序实现求每个学生的三门课程的平均成绩,应如何改进?aver = 0For i =1 To 30For j =1 To 3m = InputBox (“输入第” & j & “门课的成绩”)aver = aver + mNext javer = aver / 3Print averNext i测试题一、选择题1.以下是正确的For···Next结构。
A.For x = 1 To Step 10 B.For x = 3 To -3 Step -3 ······Next x Next xC.For x =1 To 10 D.For x = 3 To 10 Step 3 re:······Next x Next yIf i = 10 Then Goto re2.下列循环结构能正常结束循环的是。
A.i = 5 B.i = 1Do Doi = i + 1 i = i + 2Loop Until i < 0 Loop Until i = 0C.i = 10 D.i = 6Do Doi = i + 1 i = i - 2Loop Until i > 0 Loop Until i = 13.下列程序段的运行结果为。
For i = 3 To 1 Step -1Print Spc(5-i);For j = 1 To 2*i – 1Print ”*”Next jPrintNext iA.* B.* * * * * C.* * * * * D.* * * * * * * * * * * * * * * * * * * * * * * * * 4.当在文本框中输入“ABCD”4个字符时,窗体上显示的是。
Private Sub Text1_Change( )Print Text1;End SubA.ABCD B.A C.AABABCABCD D.AB ABC ABCD ABCD5.下列哪个程序段不能分别正确显示1!、2!、3!、4!的值。
A.For i = 1 To 4B.For i = 1 To 4n = 1 For j = 1 To iFor j = 1 To i n = 1n = n * j n = n * jNext j Next j Print n Print nNext i Next iC.n = 1 D.n = 1For j = 1 To 4 j = 1n = n * j Do While j < = 4Print n n = n * jNext j Print nj = j + 1Loop6.下列关于 Do···Loop循环结构执行循环体次数的描述正确的是A.Do While···Loop的循环和Do···Loop Until循环至少都执行一次B.Do While···Loop的循环和Do···Loop Until循环可能都不执行C.Do While···Loop的循环至少执行一次和,Do···Loop Until循环可能不执行D.Do While···Loop的循环可能不执行,Do···Loop Until循环至少执行一次7.下面的程序段的运行结果为多少?Private Sub Command1_Click( )For i = 1 To 5n =0For j = i To 5n = n + 1Next jNext iPrint nEnd SubA.10 B.5 C.15 D.1二、填空题1.要使下列For语句循环执行20次,循环变量的初值应是:For k = (1) To -5 Step -22.下面程序显示(2)个“*“For i = 1 To 5For j = 2 To 2Print “*”Next jNext i3.下列第40号语句共执行了(3)次,第41号语句共执行了(4)次。