VB知识点汇总.docx_第1页
VB知识点汇总.docx_第2页
VB知识点汇总.docx_第3页
VB知识点汇总.docx_第4页
VB知识点汇总.docx_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

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

文档简介

一:基础知识 对象的有关概念l 1. 对象Object:VB中常用的对象有:窗体、控件等。 2. 对象的三要素 (1)属性Property:用来描述和反映对象外部特征的参数。 (2)方法Method:允许其他对象与之交互的方式,表明一个对象所具有的能力。 (3)事件Event:响应对象的动作称为事件,它发生在用户与应用程序交互时。如单击控件、鼠标移动、键盘按下等。 事件驱动Event Driven:VB为窗体和大多数控件都规定了一组事件,当应用程序被启动后,VB随时准备捕获各种事件。一旦发生了某个事件,VB就会执行与该事件相联系的事件过程;执行完后,VB等待下一个事件的发生。 VB程序的执行步骤如下:l (1)启动应用程序,装载和显示窗体; (2)窗体(或窗体上的控件)等待事件的发生; (3)事件发生时,执行对应的事件过程; (4)重复执行步骤(2)和(3) ; (5) 直到遇到END结束语句结束程序的运行;或按“结束”强行停止程序的运行。 VB集成开发环境l 1. 主窗口 应用程序窗口,由标题栏、菜单栏和工具栏组成。 2. 窗体(form)窗口 设计VB程序的界面。 3. 代码(code)窗口 编辑窗体、标准模块中的代码。 4. 属性(properties)窗口 所有窗体或控件的属性设置。 5. 工程资源管理器(project expror)窗口 保存一个应用程序所有的文件。 6. 工具箱(toolbox)窗口 显示各种控件的制作工具,供用户在窗体上设计 建立VB程序的步骤l 1. 建立用户界面的对象,并设置对象属性; 2. 对象事件过程及编程; 3. 程序运行和调试; 4. 保存文件: 窗体frm格式和vb工程vbp格式 VB 编 码 基 础l 1. VB代码不区分字母的大小写 系统保留字自动转换每个单词的首字母大写; 用户自定义行以第一次为准。 2. 语句书写自由 一行可书写几句语句,之间用冒号分隔; 一句语句可分若干行书写,用续行符_(空格+下画线)连接一行字符运算符关系运算符逻辑运算 说明: 1当一个表达式中出现多种运算符时,首先进行算术运算符,接着处理字符串连接运算符,然后处理比较运算符,最后处理逻辑运算符,在各类运算中再按照相应的优先次序进行。 2可以用括号改变优先顺序,强令表达式的某些部分优先运行。括号内的运算总是优先于括号外的运算。对于多重括号,总是由内到外。 . 表达式的书写中需注意的问题 (1)运算符不能相邻。例a+-b是错误的。 (2)乘号不能省略。例x 乘以y 应写成:x*y (3)括号必须成对出现,均使用圆括号。 (4)表达式从左到右在同一基准并排书写,不能出现上下标 (5)要注意各种运算符的优先级别,为保持运算顺序,在写表达式时需要适当添加括号(),若用到库函数必须按库函要求书写。 4. 不同数据类型的转换 运算结果的数据类型向精度高的数据类型靠。 IntegerLongSingleDouble0与int(N) 相同,当N0时, int(N) 与fix(N) -1相等。 例如: Fix(9.59) =9, Int(9.59) =9 Fix(-9.59) =-9, Int(-9.59) =-10 思考:如何实现四舍五入取整? (2)Asc(Abcd) 值为: 65 (只取首字母的Ascii值) (3)Val(abc123) 值为:0, Val(1.2sa10) 值为1.2 注意: Val( )函数只将最前面的数字字符转换为数值 常用方法 方法是面向对象的,故使用的形式为: 对象.方法 Print方法 形式: 对象.PrintSpc(n)|Tab(n)表达式列表;|, 作用:在对象上输出信息 对象:窗体、图形框或打印机(Printer) ,省略对象在窗体上输出。 Spc(n)函数:插入n个空格,允许重复使用。 Tab(n)函数:左端开始右移动n列,允许重复使用。 ;(分号):光标定位上一个显示的字符后。 ,(逗号):光标定位在下一个打印区的开始位置处。 无 ;,时换行。 开始打印的位置缺省为打印对象的左上角0,0。 注意:Print方法在Form _Load事件过程中起作用,必须设置窗体的 AutoRedraw为True。 二:程序结构 顺序结构 VB程序设计采用结构化程序设计的思想。在VB中有3种基本的程序流程结构:顺序结构、选择结构和循环结构。所有的程序都可以看成是这三种结构或三种结构的组合。 顺序结构 所谓顺序结构,就是在程序运行过程中,按照语句的顺序逐条执行。顺序结构中主要的语句是赋值语句、输入输出语句及End语句等。赋值语句 赋值语句是最基本的语句之一,通过赋值语句,可以在程序中改变变量的值,或改变对象属性值。其语法格式为: 变量名 = 表达式 对象.属性 = 表达式 例如:A = Text1.Text B = 0 Text1.Text = Text1.Text + Command1.Caption A = 2 = 3 结果为false(表达式2=3的值) sb = Round(Sqr(delt) / (2 * a), 7) 选 择 结 构 1. IfThen语句(单分支结构) If Then 语句块 End If 或 If Then 例:已知两个数x和y,比较它们的大小,将大的数存在x中 If xy Then t=x x=y y=t End If 或 If x 0 Then x1 = (-b + Sqr(b * b - 4 * a * c) / (2 * a) x2 = (-b - Sqr(b * b - 4 * a * c) / (2 * a) Label4.Caption = 方程有两实根,分别为: + Str(x1) + Str(x2) ElseIf b * b - 4 * a * c = 0 Then x2 = (-b) / (2 * a) Label4.Caption = 方程有一根,为: + Str(x2) Else Label4.Caption = 方程没有实根 End If End Sub 循环结构 循环结构语句 1For 循环 FOR循环一般格式: For 循环变量初值 to 终值 step 步长 语句组(也被叫做循环体) next 循环变量 例题:累加器 s=1+3+5+7+9+19s=0 for i=1 to 20 step 2 s=s+i next i print s 答案:100 注意1:初值和终值即可是整数,也可是小数 s=0 for i=1.2 to 4.9 step 0.2 s=s+1 next i print s 答案:19 注意2:步长1时,可省略不写; 步长值不能为0 例题:累乘器: s=1 for i=1 to 5 s=s*i next i print s 答案:120 注意3:初值和终值大小 s=1 for i=5 to 1 step 2 s=s*i next i print s 答案:1(因为循环条件不满足,循环语句没执行) 将步长改为2,答案为_ 练习:求1到100的和。 Private Sub Command1_Click() Dim i As Integer, sum As Integer sum = 0 For i = 1 To 100 sum = sum + i Next i Print sum End Sub 累乘器:乘=1*2*3*100 Private Sub Command2_Click() Dim i As Integer, cheng As Single cheng = 1 For i = 1 To 10 cheng = cheng * i Next i Print cheng End Sub 累加、累乘 累加、累乘是较常见的数值问题。累加(累乘)是将多个数 相加(乘),所以一般采用循环结构来实现。在循环体中应有表 示累加(如sum=sum+x)或累乘(如t=t*i)的赋值语句。需要注 意的是,累加中用于存放和的变量一般赋初值为0,而累乘中用于 存放积的变量赋初值为1。 例题:阶乘 求1!+2!+n!,n由键盘输入。 【分析】该题先求阶乘,再将阶乘值累加。循环次数由用户输入确定(即n的值)。 Private Sub Form_Click() Dim s as double,t as double,n as integer s=0 t=1 n=val(InputBox(“请输入n的值”) For i=1 to n t=t*i 求i! s=s+t Next i Print “1!+2!+”;n;”!=”;s End Sub 4037913 三:静态数组及声明 数组不是一种数据类型,而是一组相同类型的变量的集合,数组必须先声明后使用。 两类数组: 静态(定长)数组、动态(可变长)数组 1. 静态数组及声明 形式: Dim 数组名(下标1,下标2) As 类型 声明了数组的名、维数、大小、类型 维数:几个下标为几维数组,最多60维。 下标:下界 To 上界 省略下界为0 ,必须为常数。 每一维大小:上界下界+1 数组大小: 每一维大小的乘积 例:Dim mark(1 to 100) As Integer 数组的基本操作 1.用循环数组元素进行赋值 For i = 1 To 10 iA(i)=0 Next i 2. 用循环输出数组元素 For i = 1 To 10 print iA(i) Next I 四:穷举法 穷举法的基本思想是:对要解决的问题的所有可能情况一一检查,从中找到符合要求的答案。 例题: 百元买百鸡问题。假定公鸡每只5元,母鸡每只3元,小鸡1元钱3只。现在有100元钱要求买100只鸡,而且每一种鸡都要有,请编程列出所有可能的购鸡方案。 设公鸡、母鸡、小鸡各为x、y、z只,根据题目要求,列出方程为: x+y+y=100 3x+5y+z/3=100 三个未知数,两个方程,此题有若干个解,采用“穷举法”,把每一种情况都考虑到。 最简单三个未知数利用三重循环来实现。 Private Sub Command1_Click() Dim x, y, z As Integer Dim a As Integer For x = 1 To 20 For y = 1 To 33 For z = 1 To 100 If 5 * x + 3 * y + z / 3 = 100 And x + y + z = 100 Then Print x=; x; Print y=; y; Print z=; z End If Next z Next y Next x Print End Sub 运行结果如下: 例题:求100-999之间的所有“水仙花数”。“水仙花数”是一个三位数,其各位数字的立方和等于该数本身。例如:153=13+53+33,153是一个水仙花数。 【分析】采用穷举法对指定范围内的每一个数进行判断它是否为水仙花数。判断一个数是否为水仙花数的关键是如何将此数的各位数字分离出来。如对于数据153,可采用下面的方法分离其各位数字 (1)int(153/100),得到百位数字1。 (2)int(153-1*100)/10),得到十位数字5。 (3)153-1*100-5*10,得到个位数字3。 程序代码如下: Private Sub Form_Click() Dim i%,a%,b%,c% For i=100 to 999 a= i100 b= (i-a*100)10 c=i-a*100-b*10 If i=a*a*a+b*b*b+c*c*c Then Print i; Next i End Sub 运行结果如下: 153 370 371 407选择结构 1ifThen语句 语句格式: (1) If Then (2) If Then End If 语句功能:当的值为True或非零时,执行Then 后面的语句(或语句块),否则不做任何操作,实现单分支 选择结构。 2IfThenElse语句 语句格式: (1) If Then Else (2) If Then Else End If 语句功能:当的值为True或非零时,执行Then后面的语句(语 句块),否则执行Else后面的语句(或语句块),实现双分支选择结构 例如:输入一个整数,判断其奇偶性。 程序代码如下: Private Sub Form_Click() Dim x as integer x=InputBox(“请输入一个整数”) If x mod 2=0 Then Print x;”是偶数” Else Print x;”是奇数” End if End Sub 3IfThenElseIf语句 语句格式: If Then ElseIf Then Else End If 语句功能:根据不同的表达式值确定执行哪个语句块,实现多分支选择结构。 使用说明:先计算的值,若为真,则执行,并跳过其他 分支语句执行If语句的后续语句(即End If后面的语句);若为假,则计算的值,依此类推,直到找到一个为真的条件时,才执行相应的语句块,然 后执行End If后面的语句。格式中的Else是可选项,表示若无任何表达式值为真 时,则执行; 若无Else选项,且所有条件表达式值都不为真,则不执 行If语句中的任何语句块。 【注意】 当If语句内有多个表达式的值为真时,只执行第一个为 真的表达式后的语句块。 例题:求一元二次方程的根。 y=ax2+bx+c 的形式的一元二次方程,输入a,b,c的值,的到方程的根 Dim a As Single Dim b As Single Dim c As Single Dim x1 As Single Dim x2 As Single Private Sub Command1_Click() a = Val(Text1.Text) b = Val(Text2.Text) c = Val(Text3.Text) If b * b - 4 * a * c 0 Then x1 = (-b + Sqr(b * b - 4 * a * c) / (2 *

温馨提示

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

评论

0/150

提交评论