VB课件第3章顺序结构.docx

上传人:b****7 文档编号:9593809 上传时间:2023-02-05 格式:DOCX 页数:25 大小:416.63KB
下载 相关 举报
VB课件第3章顺序结构.docx_第1页
第1页 / 共25页
VB课件第3章顺序结构.docx_第2页
第2页 / 共25页
VB课件第3章顺序结构.docx_第3页
第3页 / 共25页
VB课件第3章顺序结构.docx_第4页
第4页 / 共25页
VB课件第3章顺序结构.docx_第5页
第5页 / 共25页
点击查看更多>>
下载资源
资源描述

VB课件第3章顺序结构.docx

《VB课件第3章顺序结构.docx》由会员分享,可在线阅读,更多相关《VB课件第3章顺序结构.docx(25页珍藏版)》请在冰豆网上搜索。

VB课件第3章顺序结构.docx

VB课件第3章顺序结构

第三章 顺序结构程序设计

§1、预备知识

一、结构化程序设计的三种基本结构:

顺序结构、分支结构、循环结构

顺序结构:

就是从头到尾依次执行每一个语句

分支结构:

根据不同的条件执行不同的语句或者语句体

循环结构:

重复的执行语句或者语句体,达到重复执行一类操作的目的

二、语句概念:

语句是执行具体操作的指令。

VB程序中一行代码称为一条语句。

例如:

Let A=3

程序中的每条语句都必须遵从语句的语法规则和格式。

1、语句格式的符号规定

<> 尖括号;必选项

[]方括号;可选项

|竖线;用来分隔多个选择项,选其中之一项

…省略号;表示同类项目的重复出现

例如:

[<对象名>.]Print[<表达式表>]

2、语句书写规则

(1)每行通常写一条语句;若将几个语句写在一行,语句间需要用冒号分隔;

例如:

A=3:

B=4

(2)一个语句行不能超过1023个字符,如果太长,可用 “ _”续行;

例如:

Form1.print“Iama_

Student.”

(3)与其他高级语言一样,在VB中使用的分号、引号、括号等符号都是英文状态下的半角符号,而不能使用中文状态下的全角符号。

例如:

Ifa<5Thenx=10

Print"x=";x

不能写成

Ifa〈5Thenx=10

Print“x=”;x

§2、顺序结构的基本语句和方法

一、赋值语句 Let

格式:

[Let] <变量名>=<表达式>

[〈对象名〉.]<属性名>=<表达式>

功能:

首先计算赋值号右边表达式的值,然后,将值赋予左边变量或对象属性。

例 1+4=?

程序

PrivateSubForm_Activate()

Dima&,b&,m&

a=1:

b=4

m=a+b

Printm

EndSub

例3_2_1

PrivateSubForm_Click()

DimaAsLong,bAsString,cAsBoolean

a=100.23

b="100.23"

a=b

c=1>5And-1

EndSub

说明:

(1)当数值赋值于字符变量时,自动转换为字符,但是字符数据赋值与数值变量时,必须为数字,否则出错。

例如:

b=”123abc”

(2)“=”是给变量或属性赋值的符号,与关系运算符的“=”(等于)不同。

例如:

赋值语句a=b和b=a表示两个结果不同的赋值语句。

(3)赋值号左边只能是变量,不能是常量、常数符号或表达式。

下面均为错误的赋值语句:

x+y=3‘左边是表达式

5=sqr(s)‘左边是常量

(4)不能在一句赋值语句中,同时给多个变量赋值。

例如:

x=y=z=1是不正确的。

正确书写应分别用三条赋值语句完成。

z=1:

y=z:

x=z

二、输出方法:

Print

格式:

[〈对象名〉.]Print [〈表达式〉[,|;[〈表达式〉] ...]]

功能:

首先计算各个表达式的值,然后,在指定对象上按格式依次显示各个表达式的值。

说明:

(1)对象名为:

窗体(Form)、图片框(PictureBox)和打印机(Printer)

例如:

Form1.Print “Iamastudent.”

 Picture1.Print “Iamastudent.”

若对象名缺省(或“Me”),默认为当前窗体,即在当前窗体上输出。

(2)分隔符为逗号(,)时,称为“标准格式”输出。

“标准格式”输出:

将每个输出行分为若干固定段,每段为14(15)个字符,所以也称作“固定格式”。

(3)分隔符为逗号(;)时,称为“紧凑格式”输出。

“紧凑格式”输出:

输出的表达式值之间,如果是字符串和字符串间没有空格,数值与数值之间留有一个空格分隔。

“紧凑格式”也称作“自由格式”。

例如:

Print “ABC”,”DEF”,12345

输出结果:

ABC︼︼︼︼︼︼︼︼︼︼︼DEF︼︼︼︼︼︼︼︼︼︼︼︼12345

Print“ABC”;”DEF”

输出结果:

ABCDEF

Print1;2;-3

输出结果:

︼1︼︼2︼-3

Print“ABC”;1;”DEF”;-23;”GH”

输出结果:

ABC︼1︼DEF-23︼GH

(4)语句末尾如果有分隔符(逗号或分号)时,之后的输出方法的输出内容在同一行显示;

例如:

Print “X+Y=”;

………

Print5+10

输出结果:

X+Y=︼15

(5)如果关键字Print后面没有任何输出项,其作用为强制换行;

例如:

Print “X+Y=”;

 Print

 Print5+10

输出结果:

X+Y=

15

三、和Print方法有关的函数

1、Tab函数

格式:

Tab(<数值表达式>)

功能:

指定该函数后面的表达式值的输出起始位置。

例如:

PrintTab(5);“ok”;tab(15);”hi”

输出结果:

︼︼︼︼ok︼︼︼︼︼︼︼︼hi

说明:

当后面Tab函数表达式值小于前面的时,自动换行输出。

例如:

PrintTab(15);“ok”;tab(5);”hi”

输出结果:

︼︼︼︼︼︼︼︼︼︼︼︼︼︼hi

︼︼︼︼ok

2、Spc函数

格式:

Spc(<数值表达式>)

功能:

在下一个输出项前面留出若干空格。

例如:

PrintTab(5);“ok”;Spc(5);”hi”

输出结果:

︼︼︼︼ok︼︼︼︼︼hi

说明:

Spc函数仅能在Print方法中使用,如果在赋值语句中使用,须使用Space函数,否则出错,但是Space函数可用于Print方法。

格式:

Space(<数值表达式>)

例如:

A=”abc”+space(5)+”def”‘正确

A=”abc”+spc(5)+”def”‘错误

PrintTab(5);“ok”;Space(5);”hi”‘正确

3、Format函数

格式:

Format(<表达式>,<格式字符串>)

功能:

按照<格式字符串>指定格式显示表达式的值。

表达式数据类型为:

数值、字符、日期。

(龚P68)

(1)数值格式符   

字符

说明

0

数字占位符。

显示一位数字或是零。

如果表达式在格式字符串中0的位置上有一位数字存在,那么就显示出来;否则,就以零显示。

如果数值的位数少于格式表达式中零的位数(无论是小数点的左方或右方),那么就把前面或后面的零补足。

如果数值的小数点左方位数多于格式表达式中小数点左面零的位数,那么多出的部分都会显示出来。

如果数值的小数点右方位数多于格式表达式中小数点右面零的位数,那么就四舍五入到格式符限定位数。

#

数字占位符。

显示一位数字或什么都不显示。

如果表达式在格式字符串中“#”的位置上有数字存在,那么就显示出来;否则,该位置就什么都不显示。

此格式符号和“0”数字占位符大致相同,不同之处是在当表达式中数值的位数少于“#”的位数(无论是小数点左方或右方)时,不会把前面或后面的零显示出来。

.

小数点占位符。

%

百分比符号占位符。

表达式值乘以100。

而百分比字符(%)会插入到格式字符串中出现的位置上。

千分位符号占位符。

E-

E+

e-

e+

科学计数法格式。

格式表达式中在E-、E+、e-或e+的右方含有至少一个数字占位符(0或#)。

-

+

$

显示一个原义字符。

如想显示那些列出的字符之外的字符时,可以用反斜杠“\”字符括起来。

例:

PrintFormat(-123456.456,"#.#####")

PrintFormat(-123456.456,"#.#")

PrintFormat(-123456.456,"0.0")

PrintFormat(-123456.456,"000000000.0000")

PrintFormat(-123456.456,"###,###.###E+##")

PrintFormat(-123456.456,"###########.###E+##")

计算结果:

-123456.456

-123456.5

-123456.5

-000123456.4560

-123,456.456E+0

-12345645600.E-5

(2)字符串格式符

字符

说明

@

字符占位符。

显示字符或是空白。

如果字符串在格式字符串中@的位置有字符存在,那么就显示出来;否则,就在那个位置上显示空白。

&

字符占位符。

显示字符或什么都不显示。

如果字符串在格式字符串中和号(&)的位置有字符存在,那么就显示出来;否则,就什么都不显示。

<

强制小写。

将所有字符以小写格式显示。

>

强制大写。

将所有字符以大写格式显示。

!

强制由左而右填充字符占位符。

缺省值是由右而左填充字符占位符。

例:

PrintFormat("hello","@@@@@@@@@@")+"|"

PrintFormat("hello","&&&&&&&&&&")+"|"

Print Format("hello",">")+"|"

Print Format("hello","!

@@@@@@@@@@")+"|"

计算结果:

hello|

hello|

HELLO|

hello|

日期/时间格式符

字符

说明

d

以没有前导零的数字来显示日(1 – 31)。

dd

以有前导零的数字来显示日(01 – 31)。

ddd

以简写来表示星期(Sun –Sat)。

dddd

以全称来表示星期(Sunday –Saturday)。

ddddd

以完整日期表示法显示(包括年、月、日),日期的显示要依系统的短日期格式设置而定。

缺省的短日期格式为yyyy-mm-dd。

dddddd

以完整日期表示法显示日期系列数(包括年、月、日),日期的显示要依系统识别的长日期格式而定。

缺省的长日期格式为

yyyy年mm月dd日。

w

将一周中的日期以数值表示(1代表星期日~7代表星期六)。

ww

将一年中的星期以数值表示(1 – 54)。

m

以没有前导零的数字来显示月(1 – 12)。

如果m是直接跟在h或hh之后,那么显示的将是分而不是月。

mm

以有前导零的数字来显示月(01 – 12)。

如果m是直接跟在h或hh之后,那么显示的将是分而不是月。

mmm

以简写来表示月(Jan –Dec)。

mmmm

以全称来表示月(January –December)。

q

将一年中的季以数值表示(1 – 4)。

y

将一年中的日以数值表示(1 – 366)。

yy

以两位数来表示年(00 – 99)。

yyyy

以四位数来表示年(0100 – 9999)。

h

以没有前导零的数字来显示小时(0 – 23)。

hh

以有前导零的数字来显示小时(00– 23)。

n

以没有前导零的数字来显示分(0 –59)。

nn

以有前导零的数字来显示分(00 –59)。

s

以没有前导零的数字来显示秒(0 –59)。

ss

以有前导零的数字来显示秒(00 –59)。

ttttt

以完整时间表示法显示(包括时、分、秒)。

如果时间是在10:

00A.M.或P.M.之前,那么将显示有前导零的时间。

缺省的时间格式为h:

mm:

ss。

AM/PM

在中午前以12小时配合大写AM符号来使用;在中午和11:

59P.M.间以12小时配合大写PM来使用。

am/pm

在中午前以12小时配合小写am符号来使用;在中午和11:

59P.M.间以12小时配合小写pm来使用。

A/P

在中午前以12小时配合大写A符号来使用;在中午和11:

59P.M.间以12小时配合大写P来使用。

a/p

在中午前以12小时配合小写a符号来使用;在中午和11:

59P.M.间以12小时配合小写p来使用。

AMPM

或ampm

在中午前以12小时配合“上午”符号来使用;在中午和11:

59P.M.间以12小时配合“下午”来使用。

例:

PrintFormat(Date,"ddd")

PrintFormat(Date,"dddd")

Print Format(Date,"mmm")

PrintFormat(Date,"mmmm")

计算结果:

Sun

Sunday

Sep

September

 

四、清屏方法 CLS

格式:

[〈对象名〉.]CLS

功能:

清除Print方法显示的文本和绘图语句显示图形,并将光标移到对象坐标(0,0)位置。

对象名为:

窗体(Form)、图片框(PictureBox)和打印机(Printer);选项缺省为当前窗体。

例2_4_1、清屏例

五、注释语句 Rem

格式:

Rem[〈注释内容〉]

    ‘[〈注释内容〉]

功能:

非执行语句,仅作为注释。

例:

 S=3‘将3赋予S

S=3:

Rem将3赋予S

六、结束语句 End

格式:

End

功能:

结束一个程序的运行。

释放所有使用的变量,关闭所有数据文件。

七、程序暂停语句 Stop

格式:

Stop

功能:

暂停程序执行,用于监视和调试程序。

继续“F5”键。

说明:

(1)立即窗口:

显示断点处指定中间变量值;

(2)监视窗口:

显示断点处预设(拖入)的中间变量值;

(3)本地窗口:

显示断点处所有中间变量值;

§3、数据输入输出函数InputBox和MsgBox (龚 P76)

VB提供了两个函数,用户使用InputBox可以从键盘直接输入数据,使用MsgBox可以将数据输出到一个对话框中。

一、数据输入函数InputBox

格式:

InputBox(<提示>[,<标题>][,<默认内容>][,][,])

功能:

弹出一个输入对话框,并返回用户键盘输入的内容。

(字符型)

说明:

提示信息为字符表达式,长度≤1023个字符。

可以使用VB常数VbCrLf或CHR(13)+CHR(10)使提示信息写为多行。

例:

strName=InputBox(“请输入你的姓名”+vbCrLf+“然后单击确定”,“输入框”)

也可以:

strS1="请输入你的姓名"+Chr(13)+Chr(10)+"然后单击确定"

strName=InputBox(strS1,"输入框",,100,100)

当键盘输入“王晓明”后,变量strName获得键盘输入的值.

例3_3_1、键盘输入一个摄氏温度值,计算它的华氏温度值。

转换公式:

程序:

PrivateSubForm_Activate()

Dimc%,f#

c=InputBox("请输入摄氏温度")

f=9/5*c+32

Print"C=";c,"F=";f

EndSub

二、数据输出函数MsgBox和MsgBox过程

格式:

MsgBox(<提示>[,<类型>[,<标题>]])

过程形式:

MsgBox<提示>[,<类型>[,<标题>]]

功能:

弹出一个信息对话框,并根据用户选择点击的按钮,返回一个正数值。

说明:

(1)输出提示信息和标题格式于InputBox函数相同;

(2)类型设置显示按钮的数目和形式,图标样式和默认按钮。

缺省值为0。

分组

VB常数

按钮值

描述

按钮数目

vbOkOnly

0

只显示“确定”按钮

vbOkCancel

1

显示“确定”、“取消”按钮

vbAbortRetryIgnore

2

显示“终止”、“重试”、“忽略”按钮

vbYesNoCancel

3

显示“是”、“否”、“取消”按钮

vbYesNo

4

显示“是”、“否”按钮

vbRetryCancel

5

显示“重试”、“取消”按钮

图标类型

vbCritical

16

关键信息图标“X”,

vbQuestion

32

询问信息图标“?

”,

vbExclamation

48

警告信息图标“!

”,

vbInformation

64

信息图标“i”,

默认按钮

VbDefaultButton1

0

第一个按钮为默认

VbDefaultButton2

256

第二个按钮为默认

VbDefaultButton3

512

第三个按钮为默认

函数返回所选按钮整数值:

VB常数

返回值

被按下的按钮

vbOk

1

确定

vbCancel

2

取消

vbAbort

3

终止

vbRetry

4

重试

vbIgnore

5

忽略

vbYes

6

vbNo

7

例3_3_2、A+B=?

程序:

PrivateSubForm_Click()

Dima%,b%

a=InputBox("A=")

b=InputBox("B=")

c=a&"+"&b&"="&a+b

d=MsgBox(c,0,"计算1+4=?

的算术题")

EndSub

✧过程形式:

MsgBoxc,,"计算1+4=?

的算术题"

例3_3_3、鸡兔同笼问题。

鸡有两条腿,兔子有四条腿。

已知鸡和兔子一共有h只,总腿数有f条,问鸡、兔各有多少只?

分析:

设鸡有x只,兔有y只,则

x+y=h

2x+4y=f

整理,得:

程序:

PrivateSubCommand1_Click()

Dimh%,f%

h=InputBox("鸡和兔总只数")

f=InputBox("鸡和兔总脚数(偶数)")

x=(4*h-f)/2

y=(f-2*h)/2

a="笼中鸡、兔总只数为:

"&h&",总脚数为:

"&f

a=a&vbCrLf&"则笼中鸡有:

"&x&"只,兔有:

"&y&"只"

d=MsgBox(a,0,"鸡兔同笼问题")

EndSub

试输入:

51,176

✧过程形式:

MsgBoxa,,"鸡兔同笼问题"

§4、窗体(龚P22-P29)

窗体是VB的一个重要对象。

●窗体除了具有自己的属性、事件和方法外,还象一个容器一样,可以在它的上面放置其它控件。

比如:

各种按钮、文本框、图片框等。

窗体移动时,其上面的控件也随之移动,窗体隐藏时,其上控件也随之隐藏。

●窗体可以作为文件形式存放在磁盘上,扩展文件名为:

.frm

一、窗体的主要属性

窗体和其他控件一样,都具有相同的属性和不同的属性,可以人为将属性分为:

外观属性:

Caption、ForeColor、BackColor、BackStyle……

位置属性:

Left、Top、Width、Height……

字体属性:

(Font)FontName、FontSize、FontBold……

行为属性:

Enabled、Visible、AutoRedraw……

杂项:

Name、Tag……

✧属性可以通过属性窗口或代码方式设置和修改:

格式:

[<对象名>.]<属性名>=<表达式>

例如:

Form1.Caption=“VB程序例”

✧也可以在代码方式下访问:

格式:

<对象名>[.<属性名>]

例如:

Form1.PrintForm1.Caption

1、Name(名称)

标识符。

给窗体定义名称。

默认名:

formX(X=1,2,……)

2、Caption(标题)

字符型。

标题栏文本。

默认值:

formX

例如form1.Caption=”我的第一个程序”

3、ForeColor/BackColor(前景/背景颜色)

设置控件的前/背景颜色(即正文颜色),可以使用下面的办法。

(1)十六进制数值。

值域:

&H000000&~&HFFFFFF&

 

基本颜色:

颜色

十六进制值

R

G

B

VB常数

&H0&

0

0

0

VBBlack

&HFF0000&

0

0

255

VBBlue

绿

&HFF00&

0

255

0

VBGreen

&HFFFF00&

0

255

255

VBCyan

&HFF&

255

0

0

VBRed

洋红

&HFF00FF&

255

0

255

VBMagenia

&HFFFF&

255

255

0

VBYellow

&HFFFFFF&

255

255

255

VBWhite

例:

Form1.BackColor=&HFF00&‘背景色为绿色

(2)RGB函数

格式:

RGB(r,g,b)

其中r,g,b分别表示一种基色,取值:

0~255

例:

Form1.BackColor=RGB(0,255,0)‘背景色为绿色

(3)VB常数

例:

Form1.BackColor=VBGreen‘背景色为绿色

(4)QBColor函数

格式:

QBColor(<数字表达式>)

其中数值表达式取值:

0~15

颜色

颜色

0

8

1

亮蓝

9

绿

2

亮绿

10

3

亮青

11

4

亮红

12

洋红

5

亮洋红

13

6

亮黄

14

7

亮白

15

例:

Form1.BackColor=QBColor

(2)‘背景色为绿色

4、Font属性

(1)FontName(字体)

字符型。

取值:

中、英文字体库名称。

缺省值:

“宋体”

例:

Form1.FontName=”楷书_GB2312”

(2)FontSize(字号)

数字型。

缺省值:

9(小五号字)

例:

FontSize=30

中英字号对照表:

字号

初号

小初

一号

小一

二号

小二

三号

小三

四号

小四

五号

小五

六号

小六

七号

八号

磅值

42

36

26

24

22

18

16

15

14

12

10.5

9

7.5

6.5

5.5

5

(3)FontBold、FontItalic、FontUnderline、FontStrikethru

加粗斜体下划线删除线

布尔型。

取值:

True(-1)|False(0)缺省值:

False

例3_4_2Font属性综合例

5、Enabled(允许响应)

布尔型。

决定对象在运行时是否响应事件。

即控件是否可操作.当设置为false时,禁止用户进行操作。

缺省值:

True

例:

PrivateSubForm_Load()

Form1.Enabled=False

EndSub

PrivateSubForm_Click()

Pr

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 自然科学 > 生物学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1