计算机二级补习VB基础部分

上传人:jian****019 文档编号:253054472 上传时间:2024-11-28 格式:PPT 页数:54 大小:236KB
返回 下载 相关 举报
计算机二级补习VB基础部分_第1页
第1页 / 共54页
计算机二级补习VB基础部分_第2页
第2页 / 共54页
计算机二级补习VB基础部分_第3页
第3页 / 共54页
点击查看更多>>
资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,VB程序设计基础,刘鑫朝,信管教研室,第一章 VB概述,属性,(Property),:,看起来像什么? 指对象的性质、特征。,方法,(Method),:,能做什么? 指对象能执行的动作。,事件,(Event),:,对什么事有反应。指对象能识别的动作。,程序代码中使用如下格式的语句来改变属性值:,对象名,.,属性 值,(,常量、变量、表达式,),通过如下格式为变量赋值:,变量 对象名,.,属性,使用方法的格式:控件名,.,方法,VB,采用事件驱动的编程方式,事件过程的一般格式:,Private Sub,控件名,_,事件名(,参数表,),(程序代码),End Sub,第二章 创建用户界面,窗体类的相关属性、方法和事件,属性,方法,事件,Name,Caption,Backcolor Forecolor,Enabled,Visible,Font,Left Top,Width Height,Hide,Show,Print,Cls,Click,Load,Active,Deactive,第二章 创建用户界面,控件类名,属性,方法,事件,文本框,TextBox,Name,Text,PasswordChar,MultiLine,SetFocus,Change,KeyPress,标签,Lable,Caption,AutoSize,Click,命令按钮,Command Button,Caption,Enabled,SetFocus,Click,第二章 创建用户界面,控件类名,属性,方法,事件,列表框,ListBox,List,ListCount,ListIndex,Text,AddItem,Clear,RemoveItem,Click,组合框,ComboBox,Style,Text,AddItem,Clear,RemoveItem,Click,图片框控件,PictureBox,Picture,Autosize,Print,Cls,Click,第二章 创建用户界面,控件类名,属性,方法,事件,选项按钮,OptionButton,复选框,CheckBox,Caption,Value,Click,框架,Frame,Caption,水平滚动条,Hscrollbar,垂直滚动条,Vscrollbar,Value,Max和Min,LargeChange,SmallChange,Change,计时器,Timer,Interval,Timer,第三章 VB语言基础,VB应用程序,窗体文件,标准模块文件,声明部分,事件过程,通用过程,全局声明部分,模块声明部分,通用过程,声明部分,事件过程,通用过程,窗体文件,标准模块文件,全局声明部分,模块声明部分,通用过程,第三章 VB语言基础,语句:,VB程序的最基本成分,一个语句可通过,续行,符号“ _”(一个空格加一个下划线)分成多行写;,多个语句也可通过,分行,符号“:”(冒号)写在一行上。,注释语句: 格式一:Rem ,格式二: ,第三章 VB语言基础,整型数,浮点型数,整型,长整型,单精度数,双精度,数,程序运行中取值始终保持不变的数据称为“常量”,数值常量:,P,43,表,(4-1),八进制数(数字前加&O) 和 十六进制(数字前加&H),E或D,其中以E分隔的数为单精度数,以D分隔的数为双精度数,字符常量:用引号括起来的一串字符,逻辑型常量:只有True(真)和False(假)两个取值,日期型常量:用#作为界定符,mm/dd/yy表示日期, hh:mm:ss表示时间,符号常量:以符号形式表示的常量,Public,|Private Const As Type = ,第三章 VB语言基础,以符号形式出现在程序中,且取值可以发生变化的数据称为,“变量”,,变量名的命名规则如下:,必须以字母开头,长度不超过,255,个字符,在,作用域,内必须唯一,字符串内不得包含,点号,和用于类型说明的符号,、,&,、!、,、,$,,,也不能有空格,不得使用系统,保留字,(如,End Private Sub,),第三章 VB语言基础,变量的说明语句,局部变量,(,包括静态变量),在过程中声明,Static,|Dim, ,As ,窗体,/,模块级变量,在模块的“通用”部分声明,Private,|Dim, ,As ,全局变量,在模块的“通用”部分声明,Public, ,As ,第三章 VB语言基础,变量初始值,:当对一个变量进行说明后,系统会自动为其赋一个默认的初始值。,数值,型数据的初值为0;,字符型数据的初值为空串“”;,逻辑型数据的初值为,False,;,日期型数据的初值为,0,:,00,:,00,一条语句声明多个变量,:必须对每个变量都逐个声明,例:,Dim x, y as Integer,第三章 VB语言基础,变量的赋值:,变量名 = 表达式,隐式说明,类型说明符(P47,表3-4),例:k,%,= 1 :Country,$,= “China”,定长字符串的说明:,Private|Dim|Static|,Public,As String,*,例:,Public String1 As String,*,10,第三章 VB语言基础,Option Explicit语句,功能:系统自动检查模块中所有未加,显式说明,的变量,一旦发现便产生出错信息提示使用者改正错误。该语句应在模块的通用说明部分输入。,强制显式说明的好处:,一个变量如果不被定义,会被当作,变体类型,来进行处理,从而降低程序的效率;,变量定义之后,若事后使用了错误的变量名,则系统检测到错误的变量名时会发现其没有被声明,便会提示用户输入错误。,第三章 VB语言基础,算术运算符,加(,+,)、减(,-,)、乘(*)、除(,/,)、整除(,)、取余(,Mod,)、乘方(,)、字符串连接(,&,),优先级,:, -,(负号) *和,/ Mod +,和,- &,关系运算符:、,、,=,、,Y+32 (,结果,T/F,?,),第三章 VB语言基础,公共函数:,VB,系统已预先定义好的完成某特定功能的程序段,公共函数可供编程者直接调用使用。,算术函数(,P52,表,4-6,),字符函数(,P53,表,4-7,),转换函数(,P54,表,4-8,),日期与时间函数(,P55,表,4-9,),第三章 VB语言基础,格式化函数,format $ (,fmt$),格式控制字符:,数位控制符,: #、0,标点控制符,: . 、 ,,指数输出控制符,: E+、E-,符号控制符,: %、$、-、+,例,:,X = 123456.78,Print Format(x,”00000000.0000”),Print Format(x,”#,#,#.#”),00123456.7800,123,456.8,四舍五入考法?,除了Cint,其他的都是直接五入?,第四章 算法基础及VB的基本语句,任何算法都可由以下三种基本结构实现:顺序结构、分支结构、循环结构,语句1,语句2,条件满足?,语句块1,语句块2,True,False,语句块,True,False,条件,第四章 算法基础及VB的基本语句,分支结构,If,条件表达式成立,Then,A,语句,组,Else,B,语句,组,End If,注意:,语句体为语句组时,语句体和,Then,或,Else,不能够写在同一行,2.,当分支结构中,A,组或者,B,组语句仅有一条时,可省略“,End If”,,但必须将所有语句写在同一行:,第四章 算法基础及VB的基本语句,If,条件表达式成立,Then Else ,If,条件表达式成立,Then ,If,条件表达式成立,Then,A,语句,组,End If,第四章 算法基础及VB的基本语句,多分支结构,If,条件1,Then,语句块1,ElseIf,条件2,Then,语句块2,ElseIf,条件n,Then,语句块n,Else,语句块n+1,End If,Select Case,测试表达式,Case,测试项1,语句块1,Case,测试项2,语句块2,Case Else,语句块n1,End Select,P,66,第四章 算法基础及VB的基本语句,条件?,循环体,T,F,条件?,循环体,F,T,Do,While ,Loop,Do,Loop,While ,“当(while)型”循环条件成立时,执行循环体,第四章 算法基础及VB的基本语句,条件?,循环体,F,T,条件?,循环体,T,F,“直到(Until)型”循环条件成立时,结束循环,Do,Until ,Loop,Do,Loop,Until ,第四章 算法基础及VB的基本语句,For-Next循环,For,=,To,Step,循环体,Next,注意:,计数变量应为,整型或单精度型,,初值、终值和步长值为相应类型的表达式;,步长值可以为正,也可为负,省略时,默认步长值为,1,;,表达式1,表达式2,表达式3,计数变量 = 计数变量 + 步长,第四章 算法基础及VB的基本语句,Exit Do 用于直接(无条件)退出循环,可在任意Do-Loop结构的循环体中出现,一般形式为:,If,条件表达式成立,Then,Exit Do,循环体中可出现,Exit For,语句,用于,直接(无条件),退出循环,例如:求前N项的和、素数、,2010年秋:利用下列公式求函数Cos(x)的近似值,规定通项的绝对值=10,-6,时结束计算。,Option Explicit,Private Sub Command1_Click(),Dim S As Single, T As Single, K As Integer, x As Single,Const eps As Single = 0.000001,x = Val(Text1),S = 1,T = 1,Do,T =,S = S + T,K = K + 1,Loop While,Text2 = S,End Sub,K = 1,T * (-1) * x 2 / (2 * K - 1) * (2 * K),Abs(T) eps,Abs(T) eps,第四章 算法基础及VB的基本语句,赋值语句的一般形式为:,var = ,其中:var表示某个,变量名或属性名,赋值语句的,左边不能是表达式或常量,第四章 算法基础及VB的基本语句,变量(数值型) 表达式(数值型),将表达式值类型先转换为变量类型再赋值,变量(字符型) 表达式(数值型),将表达式值先转换为,数字,字符,再赋给变量,变量(逻辑型) 表达式(数值型),非零值,转换为,True,赋给变量,,0,值,转换为,False,赋给变量,变量(数值型) 表达式(逻辑型),True,转换为,1,赋给变量,,False,转换为,0,赋给变量,变量(字符型) 表达式(逻辑型),True,转化为“,True”,赋给变量,,False,转化为“,False”,赋给变量,变量(数值型) 表达式(字符型),将表达式的值类型转换为数值类型再赋值,如果,转换不成功,则报错,第四章 算法基础及VB的基本语句,InputBox函数,v = InputBox$(,),MsgBox函数,P,58 表(4-10)(4-11),MsgBox(Prompt,Button,Title,HelpFile,Context),1. 函数在此等同为一个,过程(sub),使用,不加括号;,例: MsgBox 非法数据!, , 警告 ,2. 使用Print 方法打印函数返回值,例:,Print,MsgBox(非法数据!, , 警告),3.需要用户的响应结果,将函数返回结果(P59,表411)赋给一个变量,例:Response=MsgBox(真删除吗?,4+48, 提示信息),第五章 数组,数组:一组具有,相同类型,的,有序,变量的集合,数组必须,先定义后使用,。数组的定义:,Public|Private|Static|Dim 数组名( To,, To,),As 类型,说明:, TO ,决定了每一维的大小,下界指下标的最小值,上界指下标的最大值,默认下界是从,0,开始,若想使下标从,1,开始,可在模块的“通用”部分中使用语句“,Option Base 1”,上、下界必须是,常量,或,常量表达式,,,不得是变量,,上、下界应是整数,若不是,则自动四舍五入,第五章 数组,返回上、下界函数:,UBound,(,数组名,第几维,):返回数组某维的维上界值,LBound,(,数组名,第几维,):返回数组某维的维下界值,Erase,:初始化,固定大小数组,的元素(根据数组类型给元素赋初值),或释放,动态数组,的存储空间。,第五章 数组,数组元素的赋值,通过循环逐一给数组元素赋值(用,InputBox,函数),通过循环逐一给数组元素赋值(用,Int,函数),数组元素的输出,按矩阵格式输出数组 (,Print,方法的使用),输出到窗体(图片框),输出到文本框,数组元素的引用,通过数组名和下标来引用,但元素的下标一定要在定义的上下界范围之内,否则便会报出“下标越界” 的错误。,第五章 数组,动态数组,Dim 数组名() as 类型,ReDim ,Preserve, (维界定义),控件数组:由一组具有相同名称的同类型控件组成,每个控件共享,同一,事件过程,控件数组中的每个控件都由其下标属性,Index,标识,控件数组的第一个元素下标为0,第五章 数组,Load,object(index,),Unload,object(index,),用于添加和删除控件数组中的控件,但添加和删除控件只能针对现有控件数组操作,index,可以跳序;,Unload,语句只能删除由,Load,语句添加的控件;,由,Load,语句添加的控件,其,Visible,属性为,False,所以要在程序中将刚装载控件的,Visible,属性设置为,True,,才能在窗体上可见;另外,新控件的大小、位置与原控件一样,隐藏在其背后,所以还要重新设置它的,Top,、,Left,等属性;,第五章 数组,排序,选择法排序,冒泡排序,查找,直接查找,二分法查找,第五章 数组,选择法排序:,For i=1 to N-1,For j= i+1 to N,If,A(i) A(j),Then,TEMP=A(i),A(i)=A(j),A(j)=TEMP,End If,Next j,Next i,第五章 数组,冒泡排序,For N=1 to n-1,For M=1 to n-N,If,a(M) a(M+1),Then,TEMP=A(M),A(M)=A(M+1),A(M+1)=TEMP,End If,Next M,Next N,*需要冒了多少次?,每次冒需要比较几次?,分析:二分查找是一种快捷有效的查找方法,使用二分查找的前提是数据序列已排好序。,假设有n个数已经按照从小到大的顺序排列,并存放在数组A中,设Left为查找区间的下界下标,初值为1;Right为查找区间的上界,初值为n;设需要查找的数为x;二分查找的算法如下:,(1)求出查找区间的中间位置Mid=Int(Left+Right)/2),(2)若A(Mid)=x,则找到,结束比较,(3)若A(Mid)x,则表明x在A(Left)到A(Mid-1)区间内,查找区间缩小一半,设置Right=Mid-1,(5)重复执行以上操作,(6)结束循环的条件有两个:已经找到;,找不到-LeftRight,二分查找,3,4,1,11,10,5,9,6,7,8,x=8,Left,Right,Mid,Left,Right,Mid,Right,Left,Mid,2,3,1,11,10,4,9,6,7,8,x=5,Left,Right,Mid,Mid,Right,Left,Mid,Left,Left,Mid,Left,Mid,1 2 3 4 5 6 7 89 10,1 2 3 4 5 6 7 89 10,Left =,LBound(a),Right =,UBound(a),x = InputBox(请输入要查找的数据),Do While,Left = Right,Mid = Int(Left + Right) / 2),If a(Mid) = x Then,Exit Do,ElseIf a(Mid) x Then,Left = Mid + 1,Else,Right = Mid - 1,End If,Loop,If,Left = Right,Then,Print 要查找的; x; 是A(; Mid; ),Else,Print 没找到!; x,End If,二分查找,第八章 过程,过程,Sub过程,Function过程,事件过程,通用过程,窗体事件过程,控件事件过程,公有过程,私有过程,公有过程,私有过程,第八章 过程,窗体事件过程的一般形式如下:,Private Sub Form_事件名(参数列表),局部变量和常数声明,语句块,End Sub,窗体事件过程,Initialize Load Activate Gotfocus,窗体的事件过程名中不使用其具体名称,而固定用Form,窗体事件固定为“Private”,说明它是模块级的,第八章 过程,控件事件过程的一般形式如下:,Private Sub 控件名_事件名(参数列表),局部变量和常数声明,语句块,End Sub,控件的事件过程名中必须使用其具体名称,控件事件固定有“Private”关键字,说明它是模块级的,第八章 过程,通用过程,Private|Public Static Sub (),End Sub,缺省作用域声明时,系统默认为,Public,;,在一个窗体模块中调用另一窗体模块的公有过程时,需以“窗体名,.,公有过程名”的形式调用;,Exit Sub,可以提前退出过程调用,过程不能嵌套定义,第八章 过程,Function过程的特点是返回一个值,,Function过程的形式如下:,Private|Public Function (参数列表) As ,End Function,函数体中一定要有对函数名赋值的语句,函数名=表达式,函数体内可有Exit Function语句无条件退出函数过程,第八章 过程,Sub过程的调用,Call,(,实参1,实参2,,),过程名 实参1,实参2,,调用Function过程的一般形式如下:,var =,(实在参数表),Call,(,实在参数表,), 实在参数表,第八章 过程,形参:,指过程定义时出现在过程或函数名后括号中的参数,形参为ByVal,指明参数传递方式是传值;,形参为 ByRef,指明参数传递方式是传地址或称为“引用”,实参:,指调用过程函数时,出现在过程的函数名后括号中的参数,在调用一个有参数的过程时,首先进行“形实结合”,实参按,“位置”,向形参传值或传地址;,实在参数和形式参数,要求,个数相同,位置对应,类型一致,,否则会出错;,第八章 过程,若调用过程时实参为,常量或表达式,,则无论形参定义的是按值传递还是按地址传递,系统都是按,传值方式,传递,调用函数或过程时,将单个变量转换成表达式的方法:将变量放在一对括号中。,第八章 过程,数组作为形式参数,声明数组的格式为:,(),As ,数组参数只能,按地址传递,,即不能用,ByVal,来说明数组参数,定义数组形参时不能说明数组的维数和下标变化范围;,调用过程时,对应的实参也必须是数组,但只需要数组名,无须后跟括号,且数据类型也要一致;,第八章 过程,递归过程:在过程中通过调用自身,“和自身相同的过程”,来完成某一特定任务的过程,递归过程的执行过程:逐层调用,逐层返回,此处要加递归样例程序讲解?,第八章 过程,变量的作用域,作用域,关键字,声明位置,全局变量,Public,在模块的通用部分,模块级变量,Private和Dim,在模块的通用部分,局部|过程级变量,Dim,在过程中,静态变量,Static,在过程中,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!