您好,欢迎访问三七文档
复习一、VB的数据类型Boolean(布尔型):类型说明符:Boolean,占用2字节Byte(字节):类型说明符:Byte占用1字节.Integer(整型):类型说明符:Integer,类型标识%,占用2字节.Long(长整型):类型说明符:Long,类型标识&,占用4字节.Single(单精度型):类型说明符:Single,类型标识!,占用4字节.Double(双精度型):类型说明符:Double,类型标识#,占用8字节.Currency(货币型):类型说明符:Currency,类型标识@,占用8字节.Date(日期型):类型说明符:Date,占用8字节.String(字符串,变长):类型说明符:String,类型标识$二、VB的运算符赋值运算符:用来给变量或对象的属性赋值.把运算符右边的内容(包括常量,变量,函数返回值或对象的属性)赋给左边的变量或对象.属性.使用赋值号应注意:1.赋值号左边必须是变量或对象的属性,不能是数值,常量和表达式.2.赋值号两端的数据类型应该匹配,不匹配时应进行适当转换.3.给对象赋值时,只有运行时可改写的对象属性才能被赋值.数学运算符∧指数运算-负号运算符*/乘除运算,其中除法所得到的结果为实数\整除,所得到结果为实际结果的整数部分.MOD取模运算,两数相除取余数.+-加减运算.字符串运算符&+连接字符.&与+连接运算符的区别&强制两个表达式(它们的类型可能不同)做字符串连接;而当+运算符两边的表达式中混有数值字符串及数值,其结果会是数值的求和,如果都是字符串则作相加,返回连接起来的字符串.关系运算符运算符含义示例结果=等于ABCDE=ABRFalse大于ABCDEABRFalse=大于等于bc=BCTrue小于233False=小于等于23=3True不等于abcABCTrue逻辑运算符运算符含义优先级说明示例结果Not取反1当操作数为假时,结果为真NotFNotTTFAnd与2两个操作数均为真时,TAndTT结果才为真FAndFTAndFFAndTFFFOr或3两个操作数中有一个为真时,结果为真TOrTFOrFTOrFFOrTTFTT三、VB语句与控制VB赋值语句用来对一般的变量进行赋值的赋值语句,用关键字LET描述,但一般都省略.格式:[let]变量或属性=表达式VB注释语句引入目的:为程序的阅读和修改提供信息,提高程序的可读性和可维护性.注释方法有两种:'或REM关键字.条件分支——IF语句第一种格式:if条件then语句endif如果条件为true,则执行语句,否则执行endif后面语句.第二种格式:if条件then语句else语句endifIF语句的第三种格式If条件1then语句1elseif条件2then语句2else语句3endif如果条件1为true,则执行语句1,如果为false,则检查条件2,如果条件2为true,则执行语句2,如果条件2为false,则执行语句3.多重选择语句——selectcase语句格式:selectcase测试表达式case条件1语句1………caseelse语句endselectVB将测试表达式的值与此同时结构中的每个case的值进行比较,如果相等,就执行与该case相关的程序段,如果都不等,则执行caseelse所对应的程序段.循环语句:Do……Loop语句第一种格式:DoWhile条件式[程序段]Loop当条件为true时,循环继续,直到条件变为False为止.第二种格式:DoUntil条件式[程序段]Loop当条件为False时,循环继续,直到条件变为true为止.第三种格式:Do[程序段]LoopWhile条件式当条件式为true时,循环继续进行,直到条件式变为false为止.第三种格式:Do[程序段]LoopUntil条件式当条件式为时false,循环继续进行,直到条件式变为true为止For…Next语句语法规则:For循环控制变量=初值To终值[step增量]语句next循环控制变量四、VB函数VB的数学函数函数名功能Abs求绝对值Atn反正切函数Cos余弦函数Exp求指数Fix取整数,对负数取较大的Int取整数,对负数取较小的Log求对数Rnd产生一个0~1间的随机数Sgn求数字符号Sin正弦函数Sqr求平方根Tan正切函数VB日期和时间函数函数名功能Date取得系统当前日期Time取得系统当前时间Now取得系统当前日期和时间Year返回指定日期中的年份Month返回指定日期中的月份(1-12)Day返回指定日期中天(1-31)Weekday返回指定日期为星期几Hour返回指定时间量中的小时Minute返回指定时间量中的分钟Second返回指定时间量中的秒DateSerial返回指定年月日的日期TimeSerial返回指定小时分秒的时间DateValue将字符串表示的日期转化为Variant日期TimeValue将字符串表示的时间转化为Variant时间DateAdd返回指定日期加上一定时间间隔后的日期DateDiff返回两个日期的时间间隔DatePart返回指定日期的特定部分字符串函数函数名功能Len求字符串长度Mid取给定字符串的子串Left从字符串的左边取指定长度的子串Right从字符串的右边取指定长度的子串Ltrim去掉字符串的前导空格Rtrim去掉字符串的尾随空格Trim去掉字符串的前导和尾随空格五、对象的常用属性(例)Alignment设置或返回控件的文本对齐方式AutoSize返回或设置控件是否自动改变大小以显示其全部内容BackColor返回或设置对象的背景颜色。ForeColor返回或设置在对象里显示图片和文本的前景颜色。BackStyle返回或设置控件的背景是透明的还是非透明的。BorderStyle返回或设置对象的边框样式Caption指定显示在窗体标题栏中的文本或指定显示在控件中的文本。Enabled返回或设置对象是否能够对用户产生的事件作出反应。Font返回或设置对象可用的所有字体、字形、字号Height返回或设置对象的高度Width返回或设置对象的宽度Left返回或设置对象内部的左边与它的容器的左边之间的距离。Top返回或设置对象的内顶部和它的容器的顶边之间的距离。Visible返回或设置一指示对象为可见或隐藏的值。Locked设置为ture时,文本不能被编辑,也不能被复制粘贴。MultiLine返回或设置TextBox控件是否能够接受和显示多行文本。ScrollBarsTextBox控件的属性MultiLine为真时,可为文本框控件设置水平、垂直滚动条。Style命令按钮的该赂性值为1时,可修改该命令按钮的背景颜色。Text返回或设置文本框控件中包含的文本。Name返回或设置字体对象的名字。六、几种基本算法解析法(P98)通过分析问题中各要素之间的关系,用最简练的语言或形式化的符号来表达它们的关系,得出解决问题所需的表达式,然后设计程序求解问题的方法称为解析法(参看P100“电阻计算问题”)。穷举法(P103)“穷举法”也称为“枚举法”或“列举法”。穷举法,指在一个有穷的可能的解的集合中,一一列举出集合中的每一个元素,用题目给定的检验条件来判断该元素是否符合条件,若满足条件,则该元素即为问题的一个解;否则,该元素就不是该问题的解(参看P103的IQ问题)。顺序查找(P117)当查找的对象没有规律时可用顺序查找方法。顺序查找就是一个一个地按照对象的元素往下查找,直到全部元素都查了一遍。所谓顺序查找,就是从数据序列中的第1个元素开始,从头到尾逐个查找,直到找到所要的数据或搜索完整个数据序列。这种顺序查找的代码很简单,只需编写一个循环,将数组中各元素依次与目标数进行比较即可(参看下面例题)。'随机生成10个数(在1到100之间的整数)并输出;再输出其中的最大数及位置号(顺序查找)。PrivateSubCommand1_Click()Dima(1To10)AsInteger,iAsInteger,MaxAsInteger,mIndexAsIntegerMax=0Randomize'每次运行时,要产生不同序列的随机数,执行Randomize语句。Cls'清除窗体中用PRINT等方法输出的内容。PrintFori=1To10'本段循环程序随机产生10个1到100之间的整数并显示出来,同时还按顺序找出其中的最大数。a(i)=Int(Rnd*100)+1'利用取整函数Int()、随机函数Rnd(),可让计算机产生一定范围的随机整数,公式为:Int(Rnd()*(上限-下限+1))+下限。Printa(i);'按紧凑格式输出所产生的随机数。IfMaxa(i)Then'按顺序查找10个数中的最大数。Max=a(i)'依次将查找过程中找到的大数存入变量Max中。mIndex=i'并将其位置保存到变量mIndex中。EndIf'顺序比较完成之后,Max就是10个数中的最大者。NextiPrintPrintPrint最大值=&Max&,所在位置为第&mIndex&个位置。EndSub对半查找(P119)若数据没有经过整理而无顺序,要不遗漏不重复地查找,大致也只能用顺序查找的方法进行查找了;而若数据已经整理而变得有顺序(例如数据按由小到大的顺序进行排序)了,就可以使用对半查找(比较容易理解的一种方法)的方法进行查找,从而提高工作效率。基本方法:首先在查找对象的中间位置取出一个元素来与目标元素对比,若目标元素较小,则在查找对象的上半部分进行查找就可以了。相反,如果目标元素较大,则在查找对象的下半部分继续进行查找。这样查找的范围就缩小了一半。反复进行这个过程,就能很快确定目标元素在查找对象中的位置(或者确定不在查找对象中)。参看下面例题。从键盘输入一个100以内的正整数,用对半查找法进行查找,确定其是否在随机产生的100个整数中。PrivateSubCommand1_Click()Dima(1To100)AsSingle,xAsIntegerDimLAsInteger,HAsIntegerDimtAsInteger,midAsIntegerClsRandomize'使生成的数据中无重复元素Fori=1To100a(i)=Int(100*Rnd+1)'给数组a赋1到100之间的数Printa(i);;IfiMod10=0ThenPrintNextiPrint'对一维数组进行排列,采用选择法排序Fori=1To99Forj=i+1To100Ifa(i)=a(j)Thenm=a(j):a(j)=a(i):a(i)=m'数据交换EndIfNextjNextiFori=1To100Printa(i);;IfiMod10=0ThenPrintNextix=Val(InputBox(请输入要查找的1--100的数))'输入要查找的数DoWhilex100Orx1x=Val(InputBox(您要查找的数不符合条件,请重新输入要查找的1--100的数))'保证查询符合条件Loop'对半查找程序L=LBound(a):H=UBound(a)'给L和H赋值Lbound(ArrayName[,维数]):取得数组相应维数的下界;Ubound(ArrayName[,维数]):取得数组相应维数的上界t=0'起辅助作用,当t=0时,则表示未找到要查找的数,而t=1时表示要查找的数已找到DoWhilet=0AndH=L'用dowhile循环命令判断查找条件mid=(H+L)\2Ifa(mid)=xThent=1ElseIfxa(mid)ThenH=mid-1ElseL=mid+1EndIfEndIfLoop'结果输出IfHLThenPrint没有找到您要查找的数ElsePrint你要查找的数是a(;mid;),a(mid)EndIfEndSub选择排序(P125)选择排序法是一个很简单的算法。其原理是首先找到数据清单中的最小(或最大)的数据,然后将这个数据同第一个数据交换位置(进行第一轮挑选);接下来在余下的
本文标题:VB基础知识
链接地址:https://www.777doc.com/doc-4700852 .html