资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,广东农工商职业技术学院,*,VB.NET程序设计,任务二 应用选择结构完善系统,学习目标,1、了解VB.NET常用的数据类型,2、了解运算符和表达式,3、掌握变量声明、变量作用域,4、掌握选择结构的使用,5、掌握MessageBox类的常用方法,6、了解常见错误类型,掌握错误处理的方法,VB.NET常用数据类型,类别,数据类型,长度,取值范围,整,数,类,型,Short,8位整数,-128127,Integer,32位整数,-3276832767,Long,64位长整数,-9,223,372,036,854,775,808 到 9,223,372,036,854,775,807。,Byte,无符号8位整数,0255,浮点数类型(带有小数点的数),Single,32位浮点数,负值取值范围为-3.4028235E+38 到-1.401298E-45;正值取值范围为 1.401298E-45 到 3.4028235E+38。(有效数字位数为7),Double,64位浮点数,负值取值范围为-1.79769313486231570E+308 到-4.94065645841246544E-324;正值取值范围为 4.94065645841246544E-324 到 1.79769313486231570E+308。(有效数字位数为15),Decimal,128位的数,为了适应高精度的财务和货币计算的需要,精度为2829位有效数字,逻辑类型,Boolean,布尔类型,True或False,Object,4 个字节,任何类型都可以存储在 Object 类型的变量中。,单个字符类型,Char,2 个字节(16位),一个字符,无符号类型,字符串类型,String,取决于实现平台,0 到大约 20 亿个 Unicode 字符。,日期类型,Date,DateTime,8 个字节,0001 年 1 月 1 日凌晨 0:00:00 到 9999 年 12 月 31 日晚上 11:59:59,变量与常量,变量,变量的声明,通过类型符号,:,直接在变量名后面加上类型符号,S&=10 声明S为长整型变量,2.,使用声明语句,:,Dim,变量名,As,类型,=,初始值,Dim,变量名,类型符,例如,下面两条声明语句的效果相同,:,Dim a As Integer,b As Long,c As Single,d As Double,Dim a%,b&,c!,d#,注意:定义好的变量要在程序中使用,否则会有警告(未使用的变量)。,变量与常量,变量,变量的命名,由字母、汉字、数字或下划线组成,第一个字符必须是字母或汉字或下划线。,如果名称以下划线开头,必须包含至少一个字母或数字。,长度不超过1023个字符。,不要与VB.NET中的关键字同名。,VB.NET对变量中字母的大小写不加以区分。,最好利用“匈牙利命名”规则给变量起名,即变量名由“前缀+后缀”组成。例如:IntCountor,DblSum,变量与常量,变量,静态变量的声明,自动变量:用Dim声明,变量值只在过程执行期间才存在,静态变量:用Static声明,变量值在程序运行期间一直存在,例,统计单击窗体的次数,变量与常量,变量,变量的作用域,块级变量,:用Dim声明,在特定的代码块中声明。如条件语句块.,局部变量,:在一个过程内部声明的变量,它只在本过程内有效。用Dim或Static来声明。,窗体和模块级变量,:在窗体和模块的声明部分定义的变量,它对一个窗体或模块的不同过程都有效.用 Dim或Private来声明。,全局变量,:在模块文件中用Public关键字声明的变量.它可以被应用程序中的所有模块引用。,变量与常量,常量,常量:就是其值固定不变的量,常量的命名和声明,命名:遵循变量名命名的规则,声明格式:,Const,常量名,As,类型,=,表达式,例:,Const,conMax,As Integer=9 ,声明,Integer,型常量,Const,conDate,=#10/5/2019#,声明,Date,型常量,Const,CodeName,=“ASCII”,声明,String,型常量,Const pi As Double=3.14159265358979,声明,Double,型常量,运算符,1.,算术运算符,优先级,运算,运算符,举例,结果,高,低,乘方,2 3,8,取负,-,-2 3,-8,乘、除,*/,5*3/2,7.5,整除,5*3 2,7,求余,Mod,5*3 Mod 2,1,加、减,+-,10-3+(-2),5,运算符,2.字符串运算符,运算符:&和+,例:,VB=“Visual”+“Basic”连接为字符串“Visual Basic”,第&Str(N)&条记录,Str为数值型转字符型函数。若N为1,标签上显示“第1条记录”,说明:,使用+号,要求连接的两个表达式均为字符串型,使用&号,连接的两个表达式可以为任何类型,但结果为字符串型,如,“当前日期”
/8/2019#,运算符,3.,关系运算符,运 算,运算符,举 例,结 果,等于,=,Hello=hello,False,不等于,Hello hello,True,大于,Hello hello,False,大于等于,=,45+10=55,True,小于,a ab,True,小于等于,=,45+10 5),结果为True,And:两个表达式均为True时,结果为True,例如,(4 5)And(8 7),结果为False,Or:两个表达式均为False时,结果为False,例如,(4 5)Or(8 7),结果为True,运算符,4.逻辑运算符,X,Y,Not Y,X And Y,X Or Y,False,False,True,False,False,False,True,False,False,True,True,False,True,False,True,True,True,False,True,True,表达式,表达式:用运算符和圆括号将常量、变量、函数和常数连接起来组成的有意义的式子。,如,数值表达式 Cos(180*Pi/180)*100,逻辑表达式(N=0)And(N Mod 2 0),运算优先顺序(从高到低):,函数算术运算(乘方取负乘/除整除求余加/减)字符串运算符关系运算符逻辑运算符(NotAndOr),用括号可以改变运算顺序,乘方和负号相邻时,取负优先。,例如:2 -2 的结果是0.25,相当于2(-2),属性、事件,1、属性,指对象(如窗体或控件)的特征,称为对象的属性。,2、事件,指能被对象识别的动作,如单击、双击等。,3、事件过程,指一段独立的代码。当在对象上发生了某个事件,该对象就会响应这个事件,去执行这段独立的代码。,属性的设置及代码的编写,属性的设置有2种方法:,1、利用属性窗口,找到相应对象的属性直接设置,2、在程序代码中,通过赋值语句来设置,格式为:对象名.属性名=属性值,例:Label1.Text=“请输入姓名”,编写事件过程代码的步骤:,1、打开代码窗口(方法有很多种),2、在左边的下拉列表框中选择“对象名”,3、在右边的下拉列表框中选择“事件名”,选择结构,选择结构:当设定条件成立时执行某些语句,条件不成立时则跳过这些语句或执行其它的语句。,选择结构中要使用选择语句,有两路分支和多路分支两种情况,对应的选择语句有If语句(两路出口)和Select Case语句(多路出口)。,选择结构If条件语句,1、If语句结构,If Then,End If,If Then,Else,End If,选择结构If条件语句,2、,If语句嵌套,If语句嵌套使用可形成多分支的条件语句结构,If Then,ElseIf Then,Else,End If,选择结构If条件语句举例,例1:用户登录界面的代码,用于返回登陆结果,Public bResult As Boolean=False,登陆用户的ID,Public UserId As String=,登陆的用户名,Public UserName As String=,登陆的用户密码,Private UserPwd As String=,Private Sub btnSubmit_Click(ByVal sender As System.Object,ByVal e As System.EventArgs)Handles btnSubmit.Click,判断用户输入密码的合法性,If UserPwd=“123”And UserName=“123 Then,合法用户,bResult=True,Me.Close(),Else,密码错误,bResult=False,MessageBox.Show(请确认你的用户名或密码是否正确),End If,End Sub,Private Sub btnClear_Click(ByVal sender As System.Object,ByVal e As System.EventArgs)Handles btnClear.Click,关闭登陆对话框,Me.Close(),关闭整个程序,Application.Exit(),End Sub,选择结构If条件语句举例,例2:将分数按等级划分,(在“控制台应用程序”中录入如下代码),Dim sYourScore As String,Dim iScore As Integer,System.Console.WriteLine(请输入你的考试分数(0-100之间):),sYourScore=System.Console.ReadLine(),iScore=Integer.Parse(sYourScore),If(iScore 100)Then,System.Console.WriteLine(不可能的分数!),ElseIf(iScore=100)Then,System.Console.WriteLine(你真不可思议,太棒了!),ElseIf(iScore 85)Then,System.Console.WriteLine(你真优秀!),ElseIf(iScore 60)Then,System.Console.WriteLine(不错不错!),Else,System.Console.WriteLine(下次加油哦!),End If,System.Console.ReadLine(),选择结构,Select Case选择语句,语法格式:,Select Case ,Case,Case,Case Else,End Select,功能,:根据测试表达式的值,决定程序的流向。值的类型是数值型、字符串型、日期型等,一旦与某个Case后的值相等,则执行这个Case中的,完成后执行End Select后的语句。,如果所有的Case后的都不与项匹配,则执行Case Else后的。,选择结构,Select Case选择语句,例3:将例2改写为Select Case结构。,Dim sYourScore As String,Dim iScore As Integer,System.Console.WriteLine(请输入你的考试分数(0-100之间):),sYourScore=System.Console.ReadLine(),iScore=Integer.Parse(sYourScore),Select Case iScore,Case 100,System.Console.WriteLine(你真不可思议,太棒了!),Case 85 To 99,System.Console.WriteLine(你真优秀!),Case 60 To 84,System.Console.WriteLine(不错不错!),Case 0 To 59,System.Console.WriteLine(下次加油哦!),Case Else,System.Cons
展开阅读全文