VBNET程序设计基础.ppt_第1页
VBNET程序设计基础.ppt_第2页
VBNET程序设计基础.ppt_第3页
VBNET程序设计基础.ppt_第4页
VBNET程序设计基础.ppt_第5页
已阅读5页,还剩47页未读 继续免费阅读

下载本文档

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

文档简介

第2章VB.NET程序设计基础,重要知识点:VB.NET数据类型和类型转换常量变量的声明和使用运算符和表达式输入输出函数和方法内置函数代码书写规则,计算,科学计算其他计算,三个问题,如何存放数据?,如何计算?,如何交互输入输出?,三个问题,如何存放数据?,如何计算?,如何交互输入输出?,三个问题,如何存放数据?,如何计算?,如何交互输入输出?,如何存放数据?,数据类型(有什么数据?)数据声明(给数据开辟个空间)数据赋值(在开辟的空间里存放),数据类型,编写代码时,需要对变量常量指定数据类型。目的是便于系统分配相应的内存空间。不同的数据类型有不同的存储方式、处理方式和运算方式。,标准数据类型自定义数据类型,标准数据类型,数值类,逻辑(布尔)型(Boolean),字符类,日期时间型(Date),字节型(Byte),对象型,整型(Short,Integer,Long),字符型(Char),字符串型(String),如:2,45,如:365,-88480,如:3.14,-2.65E8,如:124.86,只有两个值:True或False,浮点型(Single,Double),十进制数型(Decimal),如:34,65,如:”海南123”,”VB程序”,如:#8/720078:25:03PM#,#2/14/2010#,数据类型用户自定义类型,即用户根据需要,将若干个数据类型组合成一个结构。,1.在模块的“声明”段按如下格式进行声明:StructureStudentTypeDimIDAsString学号DimNameAsString姓名DimScoreAsSingle成绩EndStructure,2.声明其变量:DimstudentAsStudentType3.通过“变量名.成员名”来访问例如:Student.ID=070005Student.Score=85,变量和常量,变量:用来存储可能变化的数据常量:用来存储在程序运行中不变的量两个要素:变量(常量)名变量(常量)数据类型两个操作:声明变量(常量)给变量赋值(常量在声明的同时赋值)一个概念:变量(常量)的作用域,变量(常量)的命名规则(1),变量(常量)名由字母、汉字、数字或下划线组成。第1个字符不能是数字,不能将下划线“_”单独作为变量名。变量(常量)名不能与VB.NET所使用的关键字相同。如,for、sub、if、True、False等。变量(常量)名的长度不能超过16383个字符。变量(常量)名不区分大小写。,变量的命名规则(2),Tip:为提高程序的可读性,建议变量(常量)的命名“见名知义”。例如,用intTemp作为暂存整型数据的变量(常量)名。,intTemp、X1、_背景、F1_2(legal)OK!、Integer(illegal),变量(常量)的声明(1),目的:给变量(常量)指定名称依照指定的数据类型通知系统,分配存储空间,基本格式:变量:Dim变量名As数据类型常量:Const常量名As数据类型=常数表达式,例如:声明变量:DimintTempAsInteger声明常量:ConstconPIAsSingle=3.14,变量(常量)的声明(1),Tips:可一次声明多个变量(常量)DimintTemp1,intTemp2AsIntegerDimintTempAsInteger,lngTempAsLongConstconMaxAsInteger=0,conMinAsInteger=0声明常量时如果省略数据类型,则常量的数据类型由常数表达式决定。如ConstX=5,则X为Integer型。可在模块的“声明”段将变量声明为只读变量。如ReadOnlyxAsInteger=100(作用等同于常量),变量的赋值赋值语句(1),目的:将数据赋给变量或进行属性设置格式:变量名=表达式例如:给字符串变量赋值:str1=Hello!给整型变量赋值:X=1000给逻辑型变量赋值:B=True,变量的赋值赋值语句(2),Tips:可在声明时直接赋值。例如:Dimstr1AsString=“Hello”也可给属性赋值,格式为:属性名.属性=属性值例如:Me.BackColor=Color.Yellow对于i=i+x这样的运算,可使用“+=”运算符。例如,i+=1相当于i=i+1当表达式的结果类型与变量的数据类型兼容或可以自动转换时,该表达式的值可以赋给相应的变量。,变量(常量)的作用域,含义:每个变量(常量)的正常使用范围。由声明变量(常量)的位置决定。四种:块范围变量(常量)过程级变量(常量)或局部变量(常量)模块级变量(常量)全局变量(常量),块范围变量(常量),块:是指由EndIf、Next、Loop等语句终止的语句集合块范围变量(常量):在块内声明的变量(常量)作用域:只能在该代码块内被引用例如:Fori=1To10DimaAsIntegerNext,变量a只能在这个循环块中被引用,过程级变量(常量)或局部变量(常量),在一个过程内部声明,有效范围限于声明它的过程。不同过程中的局部变量(常量)可同名,因为作用域互不相同。例如:,PrivateSubButton1_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton1.ClickDimx1AsInteger,x2AsIntegerEndSubPrivateSubButton2_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton2.ClickDimx1AsSingleEndSub,局部变量,分为普通局部变量(如前述)和静态局部变量静态局部变量的声明格式:Static变量名As数据类型两者区别:普通局部变量在过程执行期间有效静态局部变量在整个程序运行期间均有效即,静态局部变量可延长变量的生命周期,例2.1:统计并通过文本框显示单击按钮的次数。,命令按钮的单击事件过程:声明静态局部变量iCountStaticiCountAsInteger=0iCount累加iCount+=1TextBox1.Text=iCount,思考:若将Static改为Dim,无论单击多少次,intCount的值总为1。为什么?,模块级变量(常量),在模块最前面的“声明”部分声明作用域:整个模块声明格式:Dim变量名As数据类型或Private变量名As数据类型,例2.2:对2个局部变量求和,输出求和的结果。,全局变量(常量),在模块的“声明”部分声明作用域:整个项目声明格式:Public变量名As数据类型PublicConst常量名As数据类型=常量表达式在窗体模块中声明的全局变量(常量),其他窗体可通过“窗体名.变量”(“窗体名.常量”)的方式引用。在标准模块中声明的全局变量(常量),其他窗体或者模块一般可直接通过变量(常量)名引用。,例2.3:在例2.1项目的窗体上再添加1个命令按钮Button4,单击该按钮可通过文本框(TextBox3)输出标准模块Module1.vb中声明的全局变量。,操作步骤:新增标准模块Module1:执行“项目添加模块”命令在Module1的代码窗口中声明全局变量num:在Form1窗体上添加Button4按钮和TextBox3文本框编写如下事件过程:,如何计算?,运算符函数表达式,运算符,即描述运算方式的符号分为:算术运算符连接运算符关系运算符逻辑运算符,表达式,即通过运算符和圆括号将常量、变量、函数和常数等连接起来组成的有意义的式子。表达式的运算结果由数据和运算符决定。分为:数值表达式字符串表达式逻辑表达式,运算符算术运算符,参与运算的数据通常都是数值型数据表达式的结果类型为数值型,运算符连接运算符,&:任意表达式&任意表达式=字符串+:数值+数值:做加法字符串+字符串:做字符串连接数值+纯数字字符串:将数字字符转换为数值后进行加法运算数值+非纯数字字符串:报错,Dims1,s2,s3AsStrings1=10+10结果为“1010”s2=10+10结果为20s3=10a+10系统报错,运算符关系运算符,用来对2个同类型的表达式进行比较结果为逻辑值:关系成立为True,不成立为False,运算符逻辑运算符,用于对操作数进行逻辑运算,结果为逻辑值,运算符优先级顺序,函数,乘方,取负,乘/除,整除,取余,加/减,算术运算符,连接运算符,关系运算符,非,与,或,异或,等价,逻辑运算符,括号内的运算总是优先于括号外的运算当乘方和负号相邻时,取负优先,内置函数,数学函数(和方法)字符串函数日期函数(和方法)转换函数(和方法)格式化输出函数其他函数,数据的输出Debug.Write方法,目的:调试程序时临时输出数据,验证或检查所编写的代码段是否正确。格式:换行输出:Debug.WriteLine(输出内容)不换行输出:Debug.Write(输出内容),例2.7:单击命令按钮完成2个数的加法运算,结果输出在即时窗口。,Dimx,yAsIntegerx=10y=30Debug.Write(x)Debug.WriteLine(y)Debug.WriteLine(x+y),Dimx,yAsIntegerx=10y=30Debug.Write(x=&x)Debug.WriteLine(,y=&y)Debug.WriteLine(x&+&y&=&x+y),数学函数和方法(1),很多VB6中的函数已经被Math类中的公共方法取代了。见教材p44表2-8。例题见教材p45-46。,三角函数:Sin,Cos,Tan,Atan对数:Log,Log10幂:Exp,Pow平方根:Sqrt取整:Floor,Ceiling,Truncate四舍五入:Round绝对值:Abs取正负号:Sign,数学函数和方法(2),也有部分是函数。见教材p45表2-9。例题见教材p46。,Int:相当于Math.FloorFix:相当于Math.TruncateRnd:0,1)随机数函数,例如,执行如下代码将返回一个16之间的随机整数:Dimv1AsIntegerv1=Int(6*Rnd()+1)Debug.WriteLine(v1),Tips:若要生成某给定范围内的随机整数,可使用表达式:Int(upperbound-lowerbound+1)*Rnd()+lowerbound)upperbound:此范围内最大的数lowerbound:此范围内最小的数例如,生成两位随机整数(10-19):Int(10*Rnd()+10)使用Random类的Next方法也可以生成随机数。例如,执行如下代码可产生一个10,20之间的随机数:DimRAsNewSystem.Random定义Random对象DimXAsIntegerX=R.Next(10,21)Debug.WriteLine(X),生成随机数的范围全部是左闭右开区间,字符串函数,ASCII码:Asc,Chr取子串:Left,Mid,Right大小写转换:LCase,UCase去掉空格:Ltrim,Rtrim,Trim数字和字符串转换:Val,Str反向输出:StrReverse字符串长度:Len生成空格字符串:Space,常用字符串函数和实例见教材p47,在引用Left和Right函数时,需要写出完整的命名空间,日期函数、属性和方法,常见函数、属性和方法见教材p48。示例见教材p48-49。,函数:Now,Today,TimeOfDay属性和方法:Year,Month,Day,DayOfWeekHour,Minute,Second,MillisecondToString,转换函数和方法,常用的转换函数见教材表2-12。这些转换函数均以字母“C”开头,以新类型的缩写结束。通过Convert类也可实现类型转换。相关方法见教材表2-13。示例见教材p50。,格式化输出函数,作用:将数据按指定的格式输出。格式:Format(表达式,样式),表达式:代表输出项样式:可以是系统预定义的格式名称(见教材表2-14)或用户自定义的格式字符串(见教材表2-15),例如:DimaAsSingle,bAsIntegera=123456.789b=5Debug.WriteLine(Format(a,“C”)输出¥123,456.80Debug.WriteLine(Format(a,Scientific)输出1.23E+05Debug.WriteLine(Format(b,000)输出005Debug.WriteLine(Format(b,#)输出5,其他函数,例如,如下代码返回0001-1-10:00:00(日期时间型变量的初值)DimdAsDateIfIsNothing(d)=TrueThenDebug.WriteLine(还未赋值)ElseDebug.WriteLine(d)EndIf,引例,在本例中我们如何进行数据输入输出呢?,数据的输入InputBox函数,功能:生成输入对话框格式:InputBox(Prompt,Title,DefaultResponse,XPos,YPos),Prompt:指定输入框中显示的提示信息Title:指定输入框的标题,默认为项目名称DefaultResponse:指定缺省输入内容,默认为空XPos:指定输入框的左边缘与屏幕左边缘之间的距离,默认水平居中YPos:指定输入框的上边缘与屏幕顶部之间的距离,默认屏幕向下大约三分之一处其中加的为可选项,否则是必选项,以后同。,例2.4:单击Button1按钮,出现1个输入框;输入字符数据并“确定”之后,在Label1标签中出现输入的内容。,Tips:单击“取消”按钮或按Esc键,返回的是一个空字符串每调用一次InputBox函数,只能输入1个值,数据的输出消息对话框,作用:输出提示信息、出错信息或警告信息创建方法:MsgBox函数MessageBox.Show方法,MsgBox函数,格

温馨提示

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

评论

0/150

提交评论