第2章VBNET编程基础ppt课件_第1页
第2章VBNET编程基础ppt课件_第2页
第2章VBNET编程基础ppt课件_第3页
第2章VBNET编程基础ppt课件_第4页
第2章VBNET编程基础ppt课件_第5页
已阅读5页,还剩87页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、VB.NET程序设计第2章 VB.NET编程根底东北大学软件学院2019-2019第一学期主要内容 2.1 数据类型 2.2 常量与变量 2.3 运算符 2.4 数组 2.5 根本语法和语句 2.6 过程 2.7 字符串操作2.1数据类型基本数据类型基本数据类型对对象象数数据据类类型型自自定定义义数数据据类类型型字字符符型型字字符符串串型型字字节节型型短短整整型型整整型型长长整整型型单单精精度度型型双双精精度度型型小小数数型型布布尔尔型型日日期期型型 字符型字符型Char Nothing默许值默许值 字符串型字符串型String Nothing默许值默许值0 065635656352 2字节字

2、节0 065635656352 2字节字节字符个数字符个数Dim a As CharDim a As Chara=“ba=“ba=ChrWa=ChrW9898Dim a As StringDim a As Stringa=“ba=“ba=“a=“试一试:假设有试一试:假设有A A和和B B两个变量,分别为字符型和字符两个变量,分别为字符型和字符串型的变量,那么经过如下的赋值语句,其最终结果串型的变量,那么经过如下的赋值语句,其最终结果是什么?是什么?A=“HelloA=“HelloB=“HelloB=“HelloA=“HA=“HB=“HelloB=“Hello字节型字节型ByteByte短整型

3、短整型ShortShort整型整型IntegerInteger长整型长整型LongLong单精度型单精度型SingleSingle双精度型双精度型DoubleDouble小数型小数型DecimalDecimal1个字节。0默许值255。2个字节。-3276832767。0默许值。4个字节。-21474836482147483647。0默许值。8个字节。0默许值。4个字节。-3.4028231038-1.40129810-45负数1.40129810-453.4028231038正数0.0默许值。8个字节。0.0默许值。16个字节。0D默许值。 断定以下变量的赋值能否正确?断定以下变量的赋值能否

4、正确? A=20.1 A=20.1 A A为单精度型变量为单精度型变量 B=3.5E39 B=3.5E39 B B为单精度型变量为单精度型变量 C=256 C=256 C C为字节型变量为字节型变量 D=256 D=256 D D为整型变量为整型变量 布尔型布尔型BooleanBooleanNothingNothing默许值默许值日期型日期型DateDate8 8个字节。个字节。范围:公元范围:公元100100年年1 1月月1 1日日公元公元99999999年年1212月月3131日。日。#12#12:0000:00AM# 00AM# 默许值。默许值。2 2字节字节TrueTrue-1-1或非

5、或非0 0FalseFalse0 0日期:#月/日/年 # 或 #月-日-年#时间:#时:分:秒 AM # 或 #时:分:秒 PM #日期时间:#月/日/年 时:分:秒 AM # 或 #月/日/年时:分:秒 PM #月-日-年 时:分:秒 AM # 或 #月-日-年时:分:秒 PM # 对象型对象型Object 4字节字节+数据类型所占空间。数据类型所占空间。 可以保管任何数据类型。可以保管任何数据类型。 Nothing默许值默许值Dim x As IntegerDim yDim z As LongY为对象型变量构造构造Private|PublicStructure Private|Publi

6、cStructure 构造名构造名 Dim Dim 字段名字段名1 As 1 As 数据类型数据类型1 1 Dim Dim 字段名字段名2 As 2 As 数据类型数据类型22 Dim Dim 字段名字段名n As n As 数据类型数据类型nnEnd StructureEnd Structure枚举枚举Private|PublicEnum Private|PublicEnum 枚举类型名枚举类型名 As As 数据类型数据类型 枚举成员名枚举成员名1 =1 =常量表达式常量表达式11 枚举成员名枚举成员名2 =2 =常量表达式常量表达式11 枚举成员名枚举成员名n =n =常量表达式常量表达

7、式nnEnd EnumEnd Enum 定义一个包含学号、姓名和性别字段定义一个包含学号、姓名和性别字段的构造。的构造。Structure StudentStructure Student Dim StuNo As StringDim StuNo As String Dim StuName As StringDim StuName As String Dim StuSex As StringDim StuSex As StringEnd StructureEnd StructureDim Stu As StudentDim Stu As Student Stu.No=Stu.No=“20190

8、00120190001 Stu.Name= Stu.Name=“张三张三 Stu.Sex= Stu.Sex=“男男 定义一个包含红、绿、蓝三种颜色的定义一个包含红、绿、蓝三种颜色的枚举。枚举。Enum MyColorEnum MyColor Red Red=0 Red Red=0 Green Green=1 Green Green=1 Blue Blue=2 Blue Blue=2End EnumEnd EnumEnum MyColorEnum MyColor Red=2 Red=2 Red=2 Red=2 Green Green=3 Green Green=3 Blue=5 Blue=5 B

9、lue=5 Blue=5End EnumEnd EnumDim Col As MyColorDim Col As MyColor Col=MyColor.GreenCol=MyColor.Green2.2 常量与变量变量的命名规那么变量的命名规那么首字符其他字符英文字母汉字数字下划线空格关键字其他字符255255个个字符字符以下哪些变量名是正确的?1. good luck2. Seven_eleven3. 7_eleven4. B&Q5. goodLuck 6. As7. _score8. _ 2,5,7DimDim变量名变量名AsAs数据类型数据类型合法变量名13种数据类型之一 Di

10、m Age,Years As Integer Dim Score As Single声明变量变量的有效范围变量的有效范围 决议了Visual Basic .NET程序中变量的可访问性。 在有效范围内变量是可用的,有效范围之外,变量是无效的,对该变量的任何运用均会导致程序报错。Dim y As IntegerFor y = 1 To 10 x = 10 Dim x As Integer x = 20Next yx = 30错误错误:x 未声明未声明错误错误:x已超出有效范围已超出有效范围 常量是在程序运转中不变的量常量是在程序运转中不变的量Const Const 常量名常量名 As As 类型类

11、型 表达式表达式常量名的命名规那么中,其长度最长常量名的命名规那么中,其长度最长为为4040个字符,其他同变量命名规那么。个字符,其他同变量命名规那么。 例如:例如: Const PI Const PI 3.14159 3.14159 声明了常量声明了常量PIPI,代表,代表3.141593.14159,SingleSingle型型 Const MAX As Integer Const MAX As Integer O144O144 声明了常量声明了常量MAXMAX,代表了八进制数,代表了八进制数144144,整型,整型 Const COUNTS Const COUNTS 12.34R 12.

12、34R 声明了常量声明了常量COUNTSCOUNTS,代表,代表12.3412.34,doubledouble型型2.3 运算符算术运算符算术运算符字符串衔接符字符串衔接符关系运算符关系运算符逻辑运算符逻辑运算符-负号 *,/ Mod +、-&=、=、Like、Is赋值运算符赋值运算符Not And Or Xor AndAlso OrElse=、+=、-=、*=、/=、 =、=LikeLike:按款式比较字符串:按款式比较字符串 # 单个数字 ?单个字符 * 恣意字符 charlist 字符列表中的单个字符 !charlist非字符列表中的单个字符LikeLike:按款式比较字符串:按

13、款式比较字符串 “123 Like “#23 “Hello Like “H?llo “Hello Like “H* “X Like “D-Z “X Like “!D-ZTrueTrueFalseFalse以下语句执行后x的值应该是多少? X=7 + 3 * 3 2 1 X = 10 X=2 Mod 2 + 2 * 2 2 / 2 X = 3 X=(3 * 9 * (3 + (9 * 3 / (3) X = 324哪个方程式是正确的? 假设 z=9e7-m A. z= 9*(e7-m) B. z=( 9*e)7-m C. z= 9*(e7)-m D. z= 9*e(7-m)以下 “&运用

14、正确的选项是? A. “Hello & “World! B. 213 & “213 C. FirstName & LastName (假设两个变量均为字符串变量) D. a&b (假设a,b均为字符串变量)以下表达式的值是多少? 假设a=-1,b=-2,c=3 A. a And b And c B. Not a And Not b And Not c C. a Or b And c D. a Xor b Xor c True: A, C, D False: B2.4 数组数组的逻辑表现方式-10036-842137a(0)a(1)a(2)a(3)a(4)a(5)

15、数组称号数组称号数组中元素的索数组中元素的索引或下标引或下标下面的说法正确吗? 假设要求数组a前两个元素的和,并把结果赋值给Sum,可以用下面的方法获得: Sum=a0+a1 “数组的第i个元素与“数组元素i的含义是一样的。正正 确确错错 误误 数组的声明数组的声明Dim 数组名数组名(下标下标1,下标下标2) As 类型类型Dim 数组数组名名 As 类类型型()数组数组名名=New 类类型下型下标标 Dim 数组数组名名() As 类类型型数组数组名名=New 类类型下型下标标声明具有声明具有10个整数元素的数组个整数元素的数组A Dim A(9) As Integer Dim A As

16、Integer() A=New Integer(9) Dim A() As Integer=New Integer9 Dim A As Integer()=New Integer(9)数组的初始化数组的初始化 声明同时初始化声明同时初始化 Dim Score() As Single=80.1,90,68 Dim b(,) As Integer=1,1,2,2 先声明后赋值先声明后赋值 Score(0)=80.1 : Score(1)=90 : Score(2)=68 b(0,0)=1 : b(0,1)=1 : b(1,0)=2: b(1,1)=2例如 某商场随机向10名顾客讯问该商场的效力质量

17、,让他们按照15的分级进展评价。其中1表示“非常不称心,5表示“非常称心。现要求将10个答案保管在一个整型数组中,并确定每种评价的出现频率。Dim Responses As Integer() = New Integer() 2, 3, 1, 5, 4, 5, 3, 4, 5, 5Dim frequency(5) As IntegerDim s As Strings = 等级 频率For answer As Integer = 0 To Responses.GetUpperBound(0) frequency(Responses(answer) += 1NextFor answer As In

18、teger = 1 To 5 s &= vbCrLf & answer.ToString & & frequency(answer).ToStringNextMessageBox.Show(s)详细代码如何获取数组的长度? 运用Length方法 例如,数组a的长度可用下面的表达式确定 a.Length如何对数组进展排序? 运用Array类的Sort方法 Array类位于System名字空间中Imports System升序陈列Array.Sort(数组名)Imports System降序陈列Array.Sort(数组名)Array.Reverse(数组名)升序排

19、序降序排序二分搜索法:BinarySearch 适用范围 大型数组 数组已排序 主要参数 参数1:数组称号 参数2:搜索键值 前往结果 找到:前往该值的索引值 未找到:前往一个负值Array.BinarySearch(a, searchKey)动态数组 ReDim语句可以在执行时修正一个数组所包含的元素数量。 但是不能修正数组的维数。 也不能修正数组的类型。 Preserve关键字可以用来保管数组中的原值,缺省该关键字,数组中的值为该类型的缺省值。1234a(0) a(1) a(2) a(3)00000a(0)a(1)a(2)a(3)a(4)12340a(0) a(1) a(2) a(3) a

20、(4)ReDim a(4)ReDim Preserve a(4)1234a(0) a(1) a(2) a(3)1234a(0) a(1) a(2) a(3)0004a(0) a(1) a(2) a(3)ReDim a(2)ReDim Preserve a(2)2.5 根本语法和语句 基基本本语语句句赋值语句条件语句IfThenElseIfThenElseIfSelectCase循环语句ForNextDo While|UntilLoopDoLoop While|UntilIfThenElse语句语句 If 条件 Then Then语句块Else Else语句块End If If Score60

21、ThenMessageBox.Show(“合格)Else MessageBox.Show(“不合格)End IfIfThenElseIf与与Select Case语句语句 If 条件1 Then Then 语句块1ElseIf 条件2Then ElseIf 语句块2ElseIf 条件nThen ElseIf 语句块nElse Else 语句块End If Select Case 表达式 Case 值1 满足值1的语句块 Case 值2 满足值2的语句块 Case 值n 满足值n的语句块 Case Else 不满足以上值的语句块 End Select If Score = 90 Then Gra

22、de = A ElseIf Score = 80 And Score = 70 And Score = 60 And Score = 90 Grade = A Case 80 To 89 Grade = B Case 70 To 79 Grade = C Case 60 To 69 Grade = D Case Else Grade = E End Select练一练 分别运用If.then.else语句和Select Case 构造将一年中的12个月份,分成四个季节输出ForNext语句语句 For 计数器=初始值 To 终值Step 步长 语句块 Exit For 语句块 Next 计数器

23、 Sum=0 For i=1 To 10 Sum+=i NextFor EachNext语句 For Each 变量名 In 数组名语句块 Exit For 语句块 Next For Each number In aIf number=90 Then Messagebox.Show(“找到了!) End If Next练一练 分别运用For.Next语句和For Each.Next语句对具有10个数组元素的整形数组进展求和Do While|UntilLoop与与DoLoop While|Until语句语句Do While|Until条件 语句块 Exit Do 语句块LoopDo 语句块 Ex

24、it Do 语句块Loop While|Until条件Do While i10 Sum+=i i+=1LoopDo Sum+=i i+=1Loop While i10改错1 假设a被初始化为32。以下语句对0到32的值进展求和While a =0 sum += aEnd WhileWhile a =0 sum += a a -=1End While改错2 打印1到8的平方Dim number As Integer = 1Do While number 8 Console.WrithLine(number2)While EndDim number As Integer = 1Do While n

25、umber 8 Console.WrithLine(number2) number += 1While End练一练 分别运用Do While|Until语句和Do.While|Until语句对具有10个数组元素的整形数组进展求和2.6 过程 在在Visual Basic中,通用过程分为中,通用过程分为两类:两类: 子程序过程子程序过程Sub过程过程 函数过程函数过程Function过程过程 Sub过程的定义Shared Private Public Sub 过程名参数表 语句序列 End Sub Sub前面的Shared、Private和Public指定过程或其中定义的变量的有效范围 Sub

26、过程定义以Sub除前面的Shared、Private和Public外开场,以End Sub终了,中间是描画过程功能的语句序列,称为过程体。 过程名与变量的命名规那么一样 参数表指定在调用该过程时,应该传送的参数的个数和类型。每个参数项的方式如下: ByVal | ByRef 参数名( ) As 类型 End Sub阐明过程的终了。 Sub过程不能嵌套Sub MultipleByVal x As Integer,ByVal y As Integer Messagebox.Show(x*y)End SubSub 过程过程1 Sub 过程过程2 EndSubEnd Sub Function过程的定义

27、 Shared Private Public Function 过程名 (参数表)As 类型名 语句序列End Function Function过程以Function除前面的Shared、Private和Public外开场,以End Function终了,中间是描画过程功能的语句序列,称为过程体或函数体。 过程体中至少有一条Return语句,方式为 Return 表达式 当调用该过程时,过程的前往值即此表达式的值。 “As 类型名指定Function过程前往值的数据类型。 其他部分同Sub过程的定义。Function MultipleByVal x As Integer,ByVal y As

28、 IntegerAs Integer Return x*yEnd SubFunction MultipleByVal x As Integer,ByVal y As IntegerAs Integer Mutiple= x*yEnd Sub 调用Sub过程,即执行该过程中的代码。调用Sub过程的方式如下: 过程名(实践参数表)其功能是:运转该过程名对应的过程。 由于Function过程前往一个值,可以像其它函数一样来调用。普通它作为表达式或表达式的一部分出现。其在表达式中出现的方式为: 变量=过程名参数表 Public Function Sum(ByVal a As Integer, ByVa

29、l b As Integer) As Integer Sum = a + bEnd FunctionPublic Sub Sum(ByVal a As Integer, ByVal b As Integer, ByRef c _As Integer) c = a + bEnd Sub调用语句:C=Sum3,4调用语句:Sum3,4,C练一练 求两个整数的最大值。要求分别用过程和函数编写,这两个数由两个文本框输入,单机按钮后求最大值。方法的重载 同一个称号创建多个方法,但是运用不同的签名 签名就是不同数量和类型的形参,或者是不同的形参顺序 适用场所:创建几个具有一样称号并在不同类型的数据上执行类

30、似义务的方法Function Example1(ByVal a As Double, ByVal b As Double) As IntegerFunction Example1(ByVal a As Double, ByVal b As Double) As Double下面的重载方法的声明能否正确?形参列表一样,但前往值的类型不同,会产生语法错误形参列表一样,但前往值的类型不同,会产生语法错误 Function Example2(ByVal a As Integer, ByVal b As Double) As Integer Function Example2(ByVal a As Do

31、uble, ByVal b As Integer) As Integer Function Example3(ByVal a As Integer) As Integer Function Example3(ByVal a As Integer, ByVal b As Integer) As Integer形参的数量或顺序不同OK形参的数量一样但类型不同 Function Example2(ByVal a As Integer, ByVal b As Integer) As Integer Function Example2(ByVal a As Double, ByVal b As Doub

32、le) As Integer Function Example2(ByVal a As Integer, ByVal b As Integer) As Integer Function Example2(ByVal a As Double, ByVal b As Double) As DoubleOK可选参数 运转调用方法传送不同数量的实参 普通情况下,灵敏性较重载方法弱些 可选参数可为多个 可选参数必需在非可选参数的右侧 用关键字“Optional修饰 可选参数必需有默许值ByVal value1 As 类型, , ByVal valuen As 类型, _Optional ByVal ovalue1 As 类型=默许值1, , _Optional ByVal ovaluen As 类型=默许值n语法格式举例 Sub Example(ByVal value1 As Boolean, _ Optional ByVal value2 As Integer=0) 以下调用正确的选项是? A. Example() B. Example(False) C. Example(True, 3) 顾客在某商场购买商品是,通常不打折,但是在特殊的时间可以打不同的折扣,详细的折扣可以指定,试利用可选参数进展实现。详细代码可变长度的形参列表 运用关

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论