当前位置:高等教育资讯网  >  中国高校课件下载中心  >  大学文库  >  浏览文档

华东理工大学:《VB程序设计 Visual Basic Programming》课程教学资源(学习指导书)第3章 VB语言基础

资源类别:文库,文档格式:PDF,文档页数:11,文件大小:254.67KB,团购合买
点击下载完整版文档(PDF)

第3章VB语言基础 3.1基本要求 1.掌握VB的数据类型和变量的定义及赋值方法: 2.掌握各种运算符的用法和表达式的建立方法: 3.掌握常用内部函数的用法: 4.掌握输入输出函数及VB的输入输出方法。 3.2知识点 1.VB数据类型 (1)标准数据类型 它是系统定义的数据类型。主要有字节型(Byte)、整型(Integer)、长整型(Long)、 单精度型(Single)、双精度型(Double)、货币型(Currency)、字符数据类型(String)、日 期数据类型(Date)、逻辑数据类型(Boolean)、对象数据类型(Object)、变体数据类型 (Variant)。 令字节型数据在内存中占1个字节,无符号,取值范围为0一255。 令整型数据在内存中占2个字节,可以表示1个带符号的整数,取值范围为-32768一 +32767。 ◇长整型数据在内存中占4个字节,可以表示1个带符号的整数,取值范围为-21一 +231.1 ◇单精度型数据在内存中占4个字节,可以表示1个带符号的实数。有效数字精确到 7位,表示数的范围为-3.402823E38-+3.402823E38 令双精度型数据在内存中占8个字节,可以表示1个带符号的实数。有效数字精确到 15位或16位十进制数。 令货币型数据采用8个字节存放。可以表示1个带符号的实数,但小数部分保留4位 有效数字,整数可以达到15位精确数字。 令日期型数据表示由年、月、日组成的日期信息或由时、分、秒组成的时间信息。用 符号“#”表示日期型数据。 ◆逻辑数据类型采用2字节存储,逻辑数据类型只有两个值:True(真)、Flse(假)。 ◇字符数据类型用于表示字符的数据。存储时根据实际情况安排字节数,是不定长的。 字符可以包括西文字符和中文字符及其他可以表示出来的形式。VB中字符型数据以 Unicode码存放,一个西文字符和中文字符均占2个字节。 ◇对象型数据用来表示图形、OLE对象或其他对象,占用4个字节。 令变体数据类型(Variant)可存放任何类型的数据,由所赋值的类型所决定。当一个 变量没有说明类型时就会被默认为变体数据类型。 (2)自定义类型 它是用户根据需要,将不同的标准数据类型集合在一起的数据类型。 自定义数据类型是结构类型,类似于数据库中的记录结构、C语言中的结构类型。具体 使用时用Type语句定义,结构如下: Type自定义类型名

               !  "# "$!  "#"$%     &'() *+,- %./012& '34&   '354&'3 678& '3978& '3:;&  '31& '3?& '3@A&  '3 B & '%  12CDEF G12HIJHKLMN O%  4CDEF  G12HPQR GSJ4HKLMN !"#O $!"!%  54CDEF  G12HPQR GSJ4HKLMN O $   678CDEF  G12HPQR GSJT%0U17VW ! XHRLMN #%#O$#%#  978CDEF # G12HPQR GSJT%0U17VW  XY " XZ[\%  :;] # G12D^%PQR GSJTH_` abc  X 0U1H4PQW  X7V1%  ?]  12DpH>?q0rGs' &t'3() &u'%  1vR1%DpkwTxyz{|12H+} 5% 1PQ~€1E1 ‚ƒPQR$„…% E1Q *+ †D^H‡G€1E1ˆF  G12%  @A„R‰…3% @AY‚ƒ@AHF  G12%  B& 'PD^Š‹HdŒŒ %Ž‡G 0‘k’•N B% &'  *+w™/Hš}›()œC‡ž% +Ÿ H¡v¢E£¤Ÿ 3 ¥¦EŸ %§B ¨k ' , ¥© HŸ ª«s ' ,  ¬

元素名[(下标)]As类型名 [元素名[(下标)]As类型名] End Type 2.常量 常量是在程序运行过程中固定不变的量。常量有三类: (1)直接常量 ①字符串常量 是用双引号括起来的一串字符。这些字符可以是除双引号和回车、换行符以外的任何 ASCI字符。如:“DATE”、”123”、”+”、”1” ②逻辑常量 只有True和False两个值。 ③整型常量:有三种形式,例如:49(十进制)、&H4A(十六进制,以&H开头)、 &O4(八进制,以&0或&开头)。 ④长整型常量:有三种形式,例如:82459(十进制)、&8邵4A&(十六进制,以&H 开头,以&结尾)、&06647&(八进制,以&0或&开头,以&结尾)。 ⑤单精度常量:有三种形式,例如:123.5,1.235E+2,123.51 ⑥双精度表示方法:有2种形式,例如:123.5#,1.235D+2 ⑦日期常量:用“#”号括起来,例如:#12/20/2002#,#14:20:30#,#03/05/200520:30# ⑧货币常量:可以是整数,也可以是小数(但只保留4位小数)。例如(50@,50.756@) (2)系统内部常量 内部常量是VB和控件提供的。可与应用程序的对象、方法和属性一起使用,编程时也 可以直接使用。 (3)用户定义常量 用户定义符号常量使用Const语句。格式:Const[As]= 例如:Const Max=-234 3.变量 在程序运行过程中其值可以发生改变的量称为变量。变量分为:属性变量和用户声明变 量。 (1)变量的命名规则 ①必须以字母或汉字开头,由字母、汉字、数字或下划线组成,长度不能超过255个 字符 ②不能使用VB中的关键字。 ③VB中字母不区分大小写,以第一次出现的变量形式为准。 ④必要时可以在变量名前加前缀或变量名后加后缀以说明变量的类型。 ⑤尽量避免使用汉字作为变量名。 (2)变量声明 语句格式:DimPrivate|StaticPublic[AS] 说明: ①变量名表示所定义的对象,命名要符合变量命名规则

­®¬-&«('./) ¬        00 -­®¬-&«('./) ¬. %+' ,    +C°±²³°E´ } % 0µs &'¶· ¸ 1¹ +9ºJž„‡¹1%»¼1PQ+½9ºJ¾¿3À²QÁŠ‹ / 1%ªsn/'%o3oo3o$o3o1o  >? q0 '  () rG% à 4 s0µ…HĪs2&Z[\'334/&ZÅ[\HQ34 ÆÇ'3 3! &È[\HQ3 Y3ÆÇ'% É 54 s0µ…HĪs#2&Z[\'334## /3&ZÅ[\HQ34 ÆÇHQ3ŸÊ'33""!3&È[\HQ3 Y3ÆÇHQ3ŸÊ'% Ë 678 s0µ…HĪsH%$H1 Ì 978Rs0  …HĪs&H$ Í ?@ >  >?8 ¬9-/8¬9. ‘s ¸ ¬RŒ @AH߬/ ߬àá

②一个定义语句可以同时定义多个变量。 ③Dim用于在标准模块、窗体模块或过程中定义变量。 ④Private在窗体模块或过程中声明变量为局部变量。 ⑤Static用于在过程中声明变量为静态变量。 ⑥Public用于在标准模块中定义全局变量。 ⑦As:用于说明该变量的类型,若省略则定义该变量为变体类型。 4.运算符 运算符是表示数据进行什么运算的符号。运算符可分成算术运算符、关系运算符、逻辑 运算符和字符串运算符四大类。运算符及其优先级如下表所示。 名称 运算符 优先级 算术运算符 (取负) *、 Mod +、 字符运算符 +、& 从上到 关系运算符 =、>、=、、 Like、Is 下依次 逻辑运算符 Not And Or Xor Eqv Imp 降低 优先级 从左到右依次降低 5.表达式 表达式是数据之间运算关系的表达形式,由常量、变量、函数等数据和运算符组成。单 个常量或变量也可以看作是表达式。 (1)书写规则:从左到右在一行上书写,无高低区分:表达式中的运算可以用圆括号 括起,以改变运算的优先级或增加表达式的清晰度。不能使用方括号或花括号,圆括号可以 出现多个,但必须配对。 (2)表达式值的类型:在算术表达式中,出现不同的数据类型时,应向精度高的数据 类型转换。 6.VB的函数 函数是用来实现数据处理过程中的特定的运算与操作。函数可分为内部函数和用户自定 义函数。内部函数是由VB本身提供的,也称标准函数。内部函数调用方法:函数名(),自变量称为参数,不同的函数其自变量都有其规定的数据类型。函数一般都有一 个返回值,也有相应的数据类型。 (1)数学函数:常用数学函数如下表所示 函数形式 函数名称及含义 Abs (x) 绝对值函数 Cos (x) 余弦函数 Exp (x) 指数函数,即ex Log (x) 以e为底对数函数,即logeX Rnd (x) 随机函数,产生0,1)内的一个数 Sin (x) 正弦函数 Sgn (x) 符号函数 Sqr (x) 平方根函数 Tan (x) 正切函数

 ‡G ¥©PQ›k úG % à = vC()ûü3ýBûüY³°E % É ?@ CýBûüY³°Eޑ Nþ % Ë    vC³°Eޑ N % Ì ? vC()ûüE þ % Í /)896 v‘ Há  N B%   +R[² J%Pah 3ê,3>? 1¹ í% ‚ ª«ŒR% ¬Ý      O&K' A3 B ;+ $3O 1 3 ê, :393839:38:3893C 3 ) >? D /+  E %F@ =,  Wð W «ð   +mê,…Hd 3 3!gh%6 G Y ÏPQù+% &'îàásWC‡²îHIìaEPQJ žHQÜ  Y ó!"8%}è¨JY#JHJPQ $ñúGH_âã$@% &'sC EH$ñ}›kHÕ%78 &À%   !+„Tñ'(³°E) Ô*ù%!PaN ! !% !+d  +,ÒÓHÏÝ()!% !-s!¬&8 9'H ÝN.H}›!‚ /0‚à %!‡0/0‡ G1¾HÏ02Õ% &' 3!s3!ª«ŒR !… !¬Ý 4 /)&7! &@!

(2)字符串函数:字符串函数的格式及基本功能如下列表格所示。 函数形式 函数名称及含义 Len (X) 字符串长度函数 LenB (X) 字符串字节数函数 InStr (N,X1,X2,[M]) 匹配位置函数 StrComp (X1,X2,[M]) 字符串比较函数 Lefts (X.N) 左取字符串函数 Mid$(X.N,M) 中取字符串函数 RightS (X,N) 右取字符串函数 Ltrim$(X) 去左空格函数 Trim$(X) 去前后空格函数 Rtrim$(X) 去右空格函数 Spaces (X) 空格填充函数 String$(N.X) 字符填充函数 InStrRev (X1,X2,N,M) 匹配位置反查函数 Join (A,X) 合并数组为串函数 Replice$(X.X1,X2) 字符串替换函数 Split$(X1,X2) 分隔串为数组函数 StrReverse$(X) 字符串反序函数 (3) 数据类型转换函数 函数形式 函数名称及含义 Asc (C) 取ASCI值函数 Val (C) 字符串转换函数 Fix (N) 截尾取整函数 Hex$(N) 转十六进制函数 Int (N) 返回不大于N的最大整数 Oct (N) 转八进制函数 Chr$(N) ASCI码值转字符串函数 Lcase (C) 大写转小写函数 Ucase (C) 小写转大写函数 Str (N) 数值转字符串函数 (4)日期和时间函数 函数形式 函数名称及含义 Date ( 取系统日期函数 DateSerial (Y,M,D) 日期设置函数 Date Value (C) 日期设置函数 DateAdd (GN.T) 增减日期函数 DateDiff (GTI,T2) 间隔日期函数

&' 1¹!s1¹!Ù A+B誫CٌR% !… !¬Ý 4  &E' 1¹58!  &E' 1¹12!  &D5E5E5-;.' D$XE!  =,&E5E5-;.' 1¹FG!  H I&E5D' K1¹! ;+I&E5D5;' EK1¹! GJ I&E5D' K1¹!  =I&E' HIÙ! '=I&E' HòõIÙ! G =I&E' HIÙ! , I&E' IÙJK!  I&D5E' 1JK!  G @&E5E5D5;' D$XELM! K&/5E' NgN¹! G , I&E5E5E' 1¹OÀ! , I&E5E' aP¹Ng!  G @ ) I&E' 1¹L±! &' &À! !… !¬Ý 4 /)&' K / ! &' 1¹&À! (<&D' QÊK4! 4 <I&D' &ZÅ[\!  &D' 1¾}ív D Rí4  &D' &È[\! JI&D' / †&1¹! ) &' íî&`î! *) &' `î&íî!  &D' &1¹! &' <=km! !… !¬Ý 4  & ' K,-<=!   &L5;5' <=SE!   &' <=SE!  /++&M5D5'' T<=!  HH&M5'5'' mP<=!

Day (C) 取日期函数 Month (C) 取月份函数 Year (C) 取年份函数 Now 返回系统日期时间函数 Time ( 取系统当前时间函数 WeekDay (C) 返回星期代号函数 (5)随机函数与随机数语句 ①随机函数格式:Rnd([x),用于产生一个0一1之间的single类型的随机数。 ②产生指定区间的随机数的方法为: (O,x)区间的随机浮点数:Rnd*x (m,n)区间的随机浮点数:m+Rnd*(n-m) [ij]区间的随机整数:Int(i+Rnd*(-i+l) ③随机数语句格式:Randomize[expN1],用于根据一套算法产生随机数,以消除同一 序列的随机数可能会反复出现的情况。若省略参数,则用系统时钟返回的值作为参数。 7.VB程序的书写 (1)VB程序是以行为单位编写的,由若干语句行组成。 (2)通常情况下,VB程序代码每行写一条语句,每个语句写在一行中,一行中最多 容纳254个字符,并按Enter键结束。 (3)如果需要在同一行内写多条语句时需要使用冒号”:”作为分隔符。 (4)如果一条语句很长或其他原因需要写成多行时,要使用续行标记”_”,是一个空 格加一个下划线字符。 8.变量定义语句(Dim) (1)语句格式:Dim[AS[AS] (2)作用:为每个变量命名、指定类型。 (3)说明:定义的变量只是在运行时才在内存中分配相应的空间,如果没有定义,同 时系统又可以默认时,变量的类型是变体类型,可以根据具体使用的情况转换为对应的类型。 9.赋值语句(Let) (1)格式:[Let变量名=表达式 (2)功能:将表达式的值赋给变量或某个带有属性的对象。 (3)说明:变量名为变量或属性的名称。“=”是赋值号,不是数学中的等号。先计算 表达式的值,然后再将结果赋给变量。“=”两边的类型必须一致或相容。如果变量是Variant 类型,则表达式可以是任何类型。 10.打印语句(Print) (1)格式:[对象名称Print[表达式表] (2)功能:在窗体、图片框、打印机等对象中输出信息。 (3)说明:与打印语句一起使用的分隔符号有“;”、“,”和函数Tab(n以、Space(n、Chr(l0)、 Chr(13). 11.注释语句(Rem或‘) (1)格式:Rem注释内容 或‘注释内容 (2)作用:是对程序适当增加一些说明以便阅读理解程序

 &' KR. &'BèsCýB3‰uv3wx<@AE"$ij% &'‘sÔwx¥©‡ž¨aPJ0nRo3n5o! 'ST3, ST3JST3 JST%   ! &'ÙsG =  yzb Y {yzb &'ùs+@°±|Ž 󇼐‘Q}~(€°±%

(3)说明:注释语句是非执行语句,也就是说注释语句的出现不会影响到程序的运行。 12.清除语句(C1s) (1)格式:[对象.]Cls (2)作用:在相应的对象上清除打印语句和绘图语句等形成的输出。 (3)说明:对象可以是窗体、图片框和立即窗口,若省略对象则在窗体上清除。 13.输入设计 (1)直接赋初值:在程序中使用赋值语句给变量或控件属性赋值。 (2)通过文本框(Text)控件传送初值 (3)交互方式赋初值:就是利用输入对话框(InputBox)输入数据。 格式:nputBox(提示[,标题[,默认输入值][,]) 其中,提示为对话框显示的信息,不能省略:标题为对话框标题:默认输入值当在输入 对话框中无输入时作为输入内容。:给出输入对话框在窗体中的位置。 14.输出设计 (I)使用Prit命令或绘图命令直接打印输出或绘图输出。 (2)通过给文本框的Text属性或标签的Caption属性赋值输出 (3)使用MsgBox语句或MsgBox()函数 用于打开一个信息框,等待用户选择一个按钮。MsgBox函数返回所选按钮的整数值: 若不需要返回值,则可使用MsgBox语句。 MsgBox()函数格式:变量%]=MsgBox(提示[,按钮][,标题]) MsgBox语句形式:MsgBox提示按钮][,标题] 其中,提示为对话框显示的信息,不能省略:标题为对话框标题:按钮是整型表达式, 决定信息框按钮的数目和类型及出现在信息框上的图标类型。 3.3疑难解析 1.逻辑表达式书写错误,在VB程序中没有造成语法而是逻辑错 数学中表示变量x在一定数值范围内,写成11adx<=2,但如果误写作1<x<=2的话,在其他语言中会产生语法错,并有相应错误提 示,而在VB中不产生语法错,当然也不会有相应提示,程序能运行,但不管x的值如何, 表达式的值恒为Tu。显然,结果是不正确的,这是一种逻辑错误,是在程序调试中最难 发现的一类错误 为什么上述表达式的值恒为Tu爬呢?因为在VB中,当两个不同类型的变量或常量参 加运算时,会自动向精度高的类型转换。逻辑型常量Tue转换为数值型时,其为-1,逻辑 型常量False转换为数值型时,其为0,表达式True+3的值为2:数字字符与数值类型运算 时,会转换为数值型,表达式"1"+1的值为2。这样,表达式1<x<=2在计算时,先根据x 的值计算1<x,其结果要么为Tue,要么为False,进一步求值时,以-1或0与2比较,所 以结果恒为True。 2.数据合法性检查中引起程序的死循环 在数据输入时,经常需要对输入的数据做合法性检查,以确保程序运行的正确性。如: 对输入的成绩数据要求是数字,否则删除原输入的内容,并将焦点仍定位于该文本框。例如, 下面有一个要实现成绩输入的简单程序,语文成绩输入至文本框txt1,数学成绩输入至文

&'‘syz¥©+‚²¥©Hϒ+yz¥©$ñ}ƒ„W°±²%  "# &'Ùs-@A.) &'ùsC2Õ@A!½wx¥©…‰¥©…h"$% &'‘s@APQ+ýB3‰uv9ý†H@AáCýB!½%  $%&' &'¶·‡sC°±E¨¥©n YÐÑÖ×% &'_³+v&' VH»+‡>?H+C°±-œER Úñ‡% N ž›N ' Ÿ jNC  EHŽrG}› Y . ókH¡%78&À%>? ' &ÀNkH‚N H>?  () &ÀNkH‚N H ' $ N 11Ô kH&ÀNHVV$ N %»¢H 8? C"#kH¥™/@"#¦קMHQVb°±²>V×%ªs @"#h¨/¤+1H©áª½i"#bHNš«Y¬ Xv+v%ĪH «­0‡G/Tñh¨"#®6°±H¥h¨"#¯+v < H3h¨"#¯

本框text2,程序界面如图3-1所示。 som□回☒ 语文: 数学: 图3-1程序界面 要实现合法性检查功能,分别在Text1 LostFocus、Text2 LostFocus事件过程中编写如 下代码: Private Sub Textl LostFocus ( If Not IsNumeric (Text1.Text)Then Textl.Text="M Text1.SetFocus End If End Sub Private Sub Text2 LostFocus ( If Not IsNumeric (Text2.Text)Then Text2.Text ="M Text2.SetFocus End If End Sub 程序运行时,当在语文成绩框Textl中输入非数字字符时,焦点在数学成绩框Text2中 不停地闪动,程序产生死循环。这是因为:当Textl输入结束,鼠标单击Text2时,激发了 Textl LostFocus事件,焦点到达Text2:但由于这时Text1中的数据是非数字的,必然会调 用Textl.SetFocus方法,使焦点从Text2回到Textl:而又激发了Text2_LostFocus事件,此 时,Text2中还未输入任何数据,IsNumeric(Text2.Text)值为False,必然会调用Text2.SetFocus 方法,使焦点从Textl回到Text2,如此就产生了死循环。 通过分析,只要Text2有默认值就不会产生死循环,因此解决Textl输入错时产生死循 环的方法是,把Private Sub Text2 LostFocus()事件过程中If的条件表达式改为:If Text2.Text◇"And Not IsNumeric(Text2.Text)Then即可。 3.同时给多个变量赋值,在VB程序中没有造成语法错而是逻辑错 同时给X、y、z三个整型变量赋初值,如果写成如下赋值语句:x可y=z=1,在C语言中, 可以实现同时对多个变量赋值;在FORTRAN等其他语言中会提示语法错。但在VB中,既 不会提示语法错,也不会实现应有的功能,它是一种逻辑错误。VB中规定,一个赋值语句 只能给一个变量赋值,上述三个“=”的含义分别是:最左边一个“=”表示赋值号,另二 个“=”为关系运算符。因此,VB先求关系表达式y=Z1的值,然后赋给x:VB中默认数 值型变量的初值为0,所以表达式y=Z=1的值为0,x赋得的值为0,y、z的值默认为0。 4.标准函数名写错 VB提供了很多标准函数,如IsNumeric()等。如将IsNumeric写成IsNummeric,系 统会提示“子程序或函数未定义”,如图3-2所示,并将该写错的函数名选中提醒用户修改

+v ?% Eà H‡G¥© qèn‡G HžµGn:o4 a±+sRs‡Gn:oRJHÃÄ Gn:oNê,%j½H ¤ê, :P: Hqõn < E•  ‡N HŒQ :P: N H< ÅN H 3P •N %  EFG+  ÒÓ¼hú()!Hª )D= &'%ªš )D=  îh )D== H, -ÒRnÆ°±Y!¿ oHª‰   ŒRHNšî!¬EÒÇÈÜ%

Nicrosoft Visual Basic X A 编译错误: 子程序或函数未定义 确定□ 帮助 图3-2编译错误提示框 5.如何声明局部变量和窗体级变量,它们有何区别? 在VB程序中,除了大量的控件对象外,还要使用一些变量,暂时存放一些中是结果。 这些变量的声明可以放在过程外的“通用声明”段,称为窗体级变量:也可以放在过程中, 称为局部变量。初学者往往对一个变量应该声明为局部变量还是窗体级变量,感觉难以确定。 其实,只要弄清楚它们的区别,就容易把握了。 局部变量和窗体级变量的区别: 窗体级变量在本窗体的所有过程中均可使用:而局部变量仅在变量声明所在的过程中可 使用,也即随着本过程的执行而分配到存储空间,当执行到End Sub语句,分配的内存空间 被回收,变量的值也就丢失。 3.4典型例题 例3-1编写程序,用InputBox函数输入一个字符串,然后按与输入的字符相反的次序 用Msgbox函数输出这个字符串。如输入字符串为“abcdefgh”,则输出为“hgfedcba”。 解答:新建工程,在窗体上添加1个命令按钮,并编写如下单击事件过程。 Private Sub Command1 Click() Dim iStr As String,outStr As String Dim i As Integer iStr=InputBox("请输入字符序列:") For i=0 To Len(iStr)-1 outStr outStr Mid(iStr,Len(iStr)-i,1) Next i MsgBox outStr杠,"输出结果:" End Sub 例3-2随机产生n个两位正整数(n由输入对话框输入,且>0),求出其中的偶数之 和,并在标签框Label1上显示。程序写在命令按钮commandl的click事件中。 解答:新建工程,在窗体上添加1个命令按钮,并编写如下单击事件过程。 Private Sub Command1 Click() Dim n As Integer Dim iAs Integer,Sum As Long n=Val(InputBox("Please input a integer","Input N value")) Sum=0 For i=1 Ton RndData=(10+Int(90 Rnd)) If RndData Mod 2=0 Then

‰   ØÉÒRv  HIJKLMNOPQ-RS1ITUV C  °±EH½¼í ÐÑ@AÁH¾/¨‡¼ HÊkD^‡¼E+Ÿf% »¼ ޑPQ^C³°Án_ޑoËHÝNýB ÏPQ^C³°EH ÝNþ %‡3ÌÍÍ@‡G ÕޑNþ ¾+ýB HÎϝQV % ‚THq/Ð!Ñ*Òì±H’bÓÁ¼% þ ýB ì±s ýB C+ýBŒ0³°EˆP¨™þ ÔC ޑŒC³°EP ¨HÏ9;Õ+³°‚²™a$WDpImHŽ‚²W %+ ¥©Ha$DIm ¾ÖH ϒ×Ø%   Ä   Øî°±H , 4& d"#@v"#HÞ 9'H¤$‚Eß HNC(‘v   R%°±îCߐd• ==+ C ²ÑE% €ÙsÚÛ°HCýBÜó Gߐd•HNØ6º²Ñ³°% ?@ ==+QCST   =/)      =/)   5=/)   :S , <SV? ) ,   V5V , D@ VTT   =:   (:'     G+ :S$  S2AG+TT     HG+ ;+:'J 

Sum=Sum RndData End If Nexti Label1.Caption=Sum End Sub 例3-3利用inputbox输入三角形三条边的长度a,b,c,计算并显示三角形的面积。公式 为:面积=√s(s-a)(s-b)(s-c),其中s=(a+b+c)2,程序界面参如图3-3。 需已知三边求面积 ▣x 三角形三条边长分别为: a=3,b=4,c=5 其面积为:6 计算 刷新 图3-3例3-3的程序运行界面 解答:新建工程,在窗体上添加1个命令按钮,并编写如下单击事件过程。 Private Sub Command1 Click() Dim al,b!,cl,s!,area! re:a=inputBox("请输入三角形第一条边长a:") b=inputBox("请输入三角形第二条边长b:") c=inputBox("请输入三角形第二条边长c:") if Not isNumeric(a)Or Not isNumeric(b)Or Not isNumeric(c)Or (a+b)<=c Or(a +c) <=b Or (b+c)<=a Then MsgBox("输入了不合法数据,请重输入") GoTo re End if s=(a+b+c)/2 area=Sqr(s *(s-a)*(s-b)*(s-c)) Print Spc(5)方"三角形三条边长分别为:" Print Spc(5);"a=";a;"b=";b;"c=";c Print Spc(5方"其面积为:";area End Sub Private Sub Command2 Click() Cls End Sub 3.5练习与思考 习题3-1阅读下列程序,写出运行结果。程序如下:

       =:=$G+      %+ H   D <     , := %+ Ä   Œ , < "#µà…µas58 55HpNRµà…­á%â Ns  S TS TS T 5‚E ):S$$T  H°±°­.ª‰  % ‰   Ä   °±²°­ €ÙsÚÛ°HCýBÜó Gߐd•HNØ6º²Ñ³°% ?@ ==+QCST =151515)15 1  6:, <SãÝ"#µà…ï‡as5 6ãT      :, <SãÝ"#µà…ïÄas5 6ãT      :, <SãÝ"#µà…ïÄas5 6ãT HD )D= STD )D= STD )D= STS$T8:S$T 8:S$T8:'J      ;)<Sã"#¼}HÝä"#ãT  M' %+H   ):S$$T     :FS)AS) TAS) TAS) TT   ? ,STR ãµà…µas5a±Nsã   ? ,STR ã:ãRR ãH:ãRR ãH:ãR   ? ,STR キáNsãR  %+ ?@ ==+QCST   ) %+   åŽ   ~«C°±Hî$²Ÿf%°±ª«s

Private Static Sub Command12 Click() Dim x As Integer,s As Integer x=Val(InputBox("请输入一个正整数=") Ifx<5 Then S=S*x Else S=S+X End If Debug.Print "s="+Str(s) End Sub 程序运行时连续三次单击Command12,且输入的数是5,2和4时,窗体上输出结果是? 习题3-2用inputbox输入一个正实数,用Print方法在一行上显示出它的平方和平方根、 立方和立方根,每个数保留三位小数,之间有间隔。如图3-4。 .Form1 ▣x i实数的平方为:1849.000 平方根为:6.557 i实数的立方为:79507.000 立方根为:3.50 入风 刷新 图3-4习题3-2的程序运行界面 习题33随机产生一个三位正整数,然后逆序输出,产生的数与逆序数同时显示。如: 246642,如图3-5。 .Form1 ▣x 随机的三位正整数为:160 转换后逆序数为:61 随机的三位正整数为:154 转换后逆序数为:451 转换显示 刷新 关闭 图3-5习题3-3的程序运行界面 习题3-4改错题:下列Commandl的单击事件过程的功能是,从一堆一分、二分、五分 的硬币中取出20枚,使其总值为60分,要求输出取法的数量及每一种取法的一分、二分、五分 的个数。程序中有4处错误,请改正过来。 Private Sub Command1 Click() Dim one As Integer'一分硬币个数 Dim two As Integer'二分硬币个数 Dim five As Integer'五分硬币个数 Const n=20'总数20枚 Dim k As Integer取法数量 k=0

?@   ==+QCST   =4æVTT   HTH ? C‡²R$*??w3 wH`GbcµX`Hm0mP%ª‰  % ‰   åŽ   °±²°­ åŽ   ;4Hqõè±"$H=ÛÔè±›kR%ªs " "Hª‰  % ‰   åŽ   °±²°­ åŽ   ܎s«C ==+ 6º²Ñ³°Bè     "      °±E0  'HÝÜ>³„% ?@ ==+QCST   = /)   W‡aé;G   = N/)   WÄaé;G   =H@ /)   Wêaé;G   ) :Wë  ì   =C/)     WK   C:

点击下载完整版文档(PDF)VIP每日下载上限内不扣除下载券和下载次数;
按次数下载不扣除下载券;
24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
共11页,试读已结束,阅读完整版请下载
相关文档

关于我们|帮助中心|下载说明|相关软件|意见反馈|联系我们

Copyright © 2008-现在 cucdc.com 高等教育资讯网 版权所有