第3章顺序结构程序设计.docx
《第3章顺序结构程序设计.docx》由会员分享,可在线阅读,更多相关《第3章顺序结构程序设计.docx(12页珍藏版)》请在冰豆网上搜索。
第3章顺序结构程序设计
第3章顺序结构程序设计
3.1数据输出
•3.1.1Console控制台类
•Console控制台类表示控制台应用程序的标准输入流、输出流和错误流。
Console类对从控制台读取字符并向控制台写入字符的应用程序提供基本支持。
它提供用于从控制台读取单个字符或整行的方法,还提供若干写入方法,可将值类型的实例、字符数组以及对象集自动转换为格式化或未格式化的字符串,然后将该字符串(可选择是否尾随一个行终止字符串)写入控制台。
•Console控制台类常用的方法有Write(不换行输出)方法和WriteLine(换行输出)方法。
1.Write方法
Console.Write(表达式)
【例3-1】计算当圆半径r=10时,圆面积是多少。
代码如下:
PrivateSubForm1_Click(ByValsenderAsObject,ByValeAsSystem.EventArgs)_
HandlesMyBase.Click
ConstPI=3.14
Dimr,sAsDecimal
r=10
s=PI*r*r
Console.Write(s)
EndSub
2.WriteLine方法
WriteLine方法将指定的数据(后跟当前行结束符)写入标准输出流输出到输出窗口。
Console.WriteLine(表达式)
例如:
Console.WriteLine(3)
Console.WriteLine(7)
Console.WriteLine(8)
3.1.2使用Label控件实现数据输出
Label控件的常用属性
•Label控件的常用方法
3.2数据输入
TextBox控件的常用属性
TextBox控件的常用方法TextBox控件常用事件
3.3控制数据的输入和输出
•Button控件允许用户在需要时,通过单击来执行操作。
•Button控件的常用属性与Label控件的属性类似,其常用方法与Label、TextBox控件类似。
【例3-2】编制程序。
由用户输入圆半径,程序能够计算出圆面积。
设计步骤如下:
(1)建立应用程序用户界面和添加控件。
在窗体上添加2个命令按钮Button1~Button2,3个标签对象Label1~Label3,1个文本框对象TextBox1。
(2)设置各对象的属性。
(4)编写事件代码。
编写“计算”命令按钮Button1的Click(单击)事件代码:
PrivateSubButton1_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)_
HandlesButton1.Click
ConstPI=3.14'设置圆周率常量PI
Dimr,sAsDecimal
r=CDec(TextBox1.Text)'将输入数据转换为数值数据赋给变量r
s=PI*r*r'计算圆面积
Label3.Text=s'将计算结果输出到标签中
Label3.Visible=True'将标签显示
EndSub
编写“重新输入”命令按钮Button2的Click事件:
PrivateSubButton2_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)_
HandlesButton2.Click
Label3.Visible=False'将标签隐藏
TextBox1.Clear()'清空文本框中数据
TextBox1.Focus()'将光标移到文本框上
EndSub
(4)运行程序。
将数据输入到文本框中,单击“计算”按钮,再单击“重新输入”按钮,观察结果。
说明:
当把工具箱中的控件添加到窗体上,就变成对象了。
但在不引起误解的情况下,也可以将窗体上的对象称为控件,例如添加3个标签控件。
3.4常用基本语句
3.4.1赋值语句
将指定的值赋给某个变量或对象的某个属性。
其语法格式为:
〈目标操作符〉=〈源操作符〉
说明:
(1)〈源操作符〉包括变量、常量、表达式以及带有属性的对象。
(2)〈目标操作符〉包括变量以及带有属性的对象。
(3)该语句的功能是将〈源操作符〉的值赋给〈目标操作符〉,是先计算再赋值。
例如:
Dimi,jAsInteger
i=5
j=i*2
(4)给对象的属性赋值,实际上是通过给对象的属性赋值,来改变对象的属性设置。
例如:
Label1.Text="请输入一个数"
Button1.Text="计算"
3.4.2使用ToolTip控件显示提示
•VB2005提供了ToolTip(信息提示)控件,来实现信息提示功能。
•ToolTip控件不能添加到窗体中,只能出现在窗体下面的面板中。
同时,在该窗体的每个对象的属性中,都会出现一个名为“ToolTip1上的ToolTip”属性。
程序员可以在该属性中输入提示信息。
【例3-3】输入圆柱体的底面半径和高,求圆柱体的体积和表面积。
编写“计算”命令按钮Button1的Click事件代码:
PrivateSubButton1_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)_
HandlesButton1.Click
Dimr,h,s,v,piAsDecimal
pi=3.14
r=TextBox1.Text
h=TextBox1.Text
s=Math.Round((pi*r*2)*h+2*(pi*r^2),2)
v=Math.Round((pi*r^2)*h,2)
TextBox3.Text=s
TextBox4.Text=v
EndSub
3.4.3注释语句
为了提高程序的可读性,通常在程序的适当位置加上一些注释。
注释语句用来对程序代码进行说明,不参与程序的执行。
其语法格式为:
Rem〈注释内容〉
或
'〈注释内容〉
说明:
(1)〈注释内容〉是说明的内容,不参与程序的编译。
(2)Rem关键字通常用来进行整行注释,而“'”通常尾随在代码之后进行注释。
(3)在Rem关键字与注释内容之间要加一个空格,也可以用撇号“'”来替代Rem关键字。
若在语句行尾注释,须用空格与语句隔开。
3.5修饰输入/输出
3.5.1设置字体格式
1.在属性窗口中设置Font属性
2.通过代码设置Font属性
在编写代码过程中设置字体格式,需要生成一个新的Font类。
其语法格式为:
对象名.Font=NewFont(〈字体名〉,〈字体大小〉[,〈字体样式〉,〈字体单位〉])
3.5.2颜色
•建立界面时,可以在属性窗口中,通过设置ForeColor属性设置字体颜色,通过设置BackColor属性设置背景颜色。
ForeColor属性和BackColor属性都是一个下拉列表。
另外,还可以通过程序代码,在编程过程中设置颜色。
•VB2005使用固定的颜色系统,每种颜色都由一个Long型数据表示。
VB2005提供了两种方式来指定颜色值。
1.将内部颜色常数赋给颜色属性
VB2005提供了许多内部颜色常数,通过给颜色属性赋值,可以实现颜色的设置。
其语法格式为:
对象名.ForeColor|BackColor=〈颜色常数〉
说明:
〈颜色常数〉表示指定颜色的名称,例如Color.Black、Color.Red等。
2.使用FromOle方法
VB2005提供了System.Drawing命名空间的ColorTranslator类的FromOle方法,通过设置该方法的操作,可以实现颜色的设置。
其语法格式为:
对象名.ForeColor|对象名.BackColor=System.Drawing.ColorTranslator.FromOle(〈参数〉)
说明:
(1)参数可以是QBColor函数。
该函数可以表示16种颜色,其参数取值为0~15。
其语法格式如下:
QBColor(〈0~15的整数〉)
(2)参数也可以是RGB函数。
该函数使用3种颜色(红、绿、蓝)的饱和度表示颜色。
每种颜色的取值为0~255。
其语法格式如下:
RGB(〈0~225的整数〉,〈0~225的整数〉,〈0~225的整数〉)
3.5.3背景图片
1.通过属性窗口设置背景图片
•窗体和命令按钮通过BackgroundImage属性设置背景图片。
•标签通过Image属性设置背景图片。
2.通过代码设置背景图片
VB2005提供了System.Drawing命名空间的Image类的FromFile方法,通过设置该方法,可以在编写代码时设置背景图片。
其语法格式为:
对象名.BackgroundImage|Image=System.Drawing.Image.FromFile(〈图片文件路径〉)
如果窗体有背景图片,而标签只是文本显示,则需要将标签的BackColor属性的Web选项卡设置为Transparent,使标签透明显示。
【例3-5】如图所示,为窗体设置背景图片,当单击不同的按钮时,可以改变文本的字体格式和颜色。
(1)建立应用程序用户界面和添加控件。
在窗体上添加6个命令按钮Button1~Button6,1个标签Label1,1个信息提示对象。
(2)设置各对象的属性。
(3)编写事件代码。
编写窗体Form1的Load事件代码:
PrivateSubForm1_Load(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)_
HandlesMyBase.Load
Me.BackgroundImage=System.Drawing.Image.FromFile("C:
\Bluehills.jpg")
EndSub
编写“黑体”命令按钮Button1的Click事件代码:
PrivateSubButton1_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)_
HandlesButton3.Click
Label1.Font=NewFont("黑体",15)'设置标签的字体
EndSub
编写“楷体”命令按钮Button2的Click事件代码:
PrivateSub_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)_
HandlesButton1.Click
Label1.Font=NewFont("楷体",15)'设置标签的字体
EndSub
编写“隶书”命令按钮Button3的Click事件代码:
PrivateSubButton3_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)_
HandlesButton2.Click
Label1.Font=NewFont("隶书",15)'设置标签的字体
EndSub
编写“红色”命令按钮Button4的Click事件代码:
PrivateSubButton4_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)_
HandlesButton4.Click
Label1.ForeColor=Color.Red'设置标签字体的颜色
EndSub
编写“绿色”命令按钮Button5的Click事件代码:
PrivateSubButton5_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)_
HandlesButton5.Click
Label1.ForeColor=System.Drawing.ColorTranslator.FromOle(QBColor(3))
EndSub
编写“蓝色”命令按钮Button6的Click事件代码:
PrivateSubButton6_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)_
HandlesButton6.Click
Label1.ForeColor=System.Drawing.ColorTranslator.FromOle(RGB(0,255,0))
EndSub
3.5.4对象分组
•VB2005提供了GroupBox(组框)控件,可以将窗体上杂乱的控件对象分组。
GroupBox控件的常用属性是AutoSize。
•说明:
(1)组框控件一般只使用属性。
(2)组框是一个典型的容器类控件。
容器类控件指可以容放其他控件的控件,例如组框、窗体等。
而标签、文本框等属于非容器类控件,非容器类控件是指不能容放其他控件的控件。
3.6顺序结构程序设计实例
【例3-6】从键盘输入一元二次方程的二次项系数、一次项系数和常数项,输出判别式b2-4ac的值。
(1)建立应用程序用户界面和添加控件。
在窗体上添加若干文本框控件对象。
(2)设置对象属性。
(3)编写事件代码。
编写“计算”命令按钮Button1的Click事件代码:
PrivateSubButton1_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)_
HandlesButton1.Click
Dimb,a,c,vAsDouble
b=CDbl(TextBox1.Text)
a=CDbl(TextBox2.Text)
c=CDbl(TextBox3.Text)
v=b^2-4*a*c
TextBox4.Text=CStr(v)
EndSub
【例3-7】设某职工应发工资x元,试求最佳付款方案。
(1)建立应用程序用户界面和添加控件。
在窗体上添加1个文本框控件对象。
(2)设置对象属性。
(3)编写事件代码。
编写“应付”命令按钮Button1的Click事件代码:
PrivateSubB_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)_
HandlesButton1.Click
DimsalaryAsInteger
Dima100,a50,a20,a10,a5,a1AsInteger
salary=TextBox1.Text'salary为应发工资数
a100=salary\100'求百元票张数
TextBox2.Text=a100'显示百元票张数
salary=salary-100*a100'求剩余款项
a50=salary\50'求伍拾元票张数
TextBox3.Text=a50
salary=salary-50*a50
a20=salary\20'求贰拾元票张数
TextBox4.Text=a20
salary=salary-20*a20
a10=salary\10'求拾元票张数
TextBox5.Text=a10
salary=salary-10*a10
a5=salary\5'求伍元票张数
TextBox6.Text=a5
a1=salary-5*a5'求壹元票张数
TextBox7.Text=a1
EndSub