第四章控制结构程序设计课件.ppt
《第四章控制结构程序设计课件.ppt》由会员分享,可在线阅读,更多相关《第四章控制结构程序设计课件.ppt(164页珍藏版)》请在三一办公上搜索。
1、1,Visual Basic程序设计基础,谢谢观赏,2019-8-21,2,第四章 控制结构程序设计,4,选择控件 单分支条件语句 双分支条件语句 多分支条件语句 If语句嵌套,谢谢观赏,2019-8-21,3,关系运算符,各个关系运算符的优先级是相同的 关系运算符可以对数值、字符串、表达式进行比较关系运算的结果为逻辑值,谢谢观赏,2019-8-21,4,思考题,思考: x=6 当x=6时,结果为true 456=“456” 出错!类型不匹配Sqr(2) 2 = 2 False, Sqr(2) 是个近似数,有误差,所以不等,两个字符串进行比较:逐一比较每个字符的ASCII,只有两个字符串中所有
2、字符相同时,两字符串相等,谢谢观赏,2019-8-21,运算符的优先级,5,算术运算符字符串运算符关系运算符逻辑运算符,-(负号)*, /Mod+,-,&,无优先顺序,NotAndOrXor,由高到低,例:设a=4,b=3,c=2,d=1,表达式ab+1Or cd And b Mod c 的值 ?,谢谢观赏,2019-8-21,6,Contents,选择控件 单行结构条件语句 块结构条件语句 IIf函数 If语句的嵌套,谢谢观赏,2019-8-21,7,选择控件,谢谢观赏,2019-8-21,8,单选按钮 OptionButton,属性Caption : Option1、Option2Enab
3、ledValue 事件Click,表明从一组选项中选择一项,只能选中一项,谢谢观赏,2019-8-21,9,复选框CheckBox,属性Caption : Check1、Check2ValueAlignment事件Click,一组复选框,可以同时选中多个,也可以一个都不选,谢谢观赏,2019-8-21,10,框架控件Frame,框架用来对控件进行分组,即把指定的控件放到框架中,Caption : Frame1、Frame2Enable: False时,框架中所有对象均被屏蔽,谢谢观赏,2019-8-21,11,单行结构条件语句,谢谢观赏,2019-8-21,12,单行结构条件语句,If xy
4、Then t = x: x = y: y = t,谢谢观赏,2019-8-21,13,块结构条件语句,单分支和双分支选择的块形式,If Then End If,If Then Else End If,谢谢观赏,2019-8-21,14,y =,tan(x+1) + 3x2 (x = 0),sin x - x3 + x (x 0),If x=0 Then y =tan(x+1) + 3 * x2Else y = sin(x) x3 + xEnd If,计算分段函数,条件语句,谢谢观赏,2019-8-21,条件语句,a=3b=2if ab then msgbox “a大于b”Else msgbox
5、 “a小于b”End if,15,谢谢观赏,2019-8-21,条件语句,a=3b=2c=1if ab and ac then msgbox “a最大”End if,16,16,谢谢观赏,2019-8-21,条件语句,a=3b=2c=1if ab and ac then msgbox “a最大”Else msgbox “a不是最大”End if,17,17,谢谢观赏,2019-8-21,18,块结构条件语句,If a100 then print “a大于100”Elseif a50 then print “a大于50,小于100”Elseif a10 then print “a大于10,小于5
6、0”Else print “a小于等于10”End if,谢谢观赏,2019-8-21,条件语句,判断一个字符是大写字母、小写字母或者不是字母,19,谢谢观赏,2019-8-21,条件语句,Dim str as stringstr=“C”If str=“A”and str=“a”and str=“z”then msgbox “str是小写字母”Else msgbox “str不是字母”endif,20,谢谢观赏,2019-8-21,21,If Ucase(strC) = A And Ucase(strC) =0 And strC = 9 ThenPrint strC + 是数字字符ElsePr
7、int strC + 是其它字符End If,条件语句,已知变量strC中存放了一个字符,判断该字符是字母字符、数字字符还是其它字符,并作相应的显示,谢谢观赏,2019-8-21,22,程序的基本组成,程序设计的一般步骤:分析:问题定义设计:设计解题步骤算法选择与创建界面编码:用程序设计语言描述写程序测试与调度:改错完成文档:整理和组织描述程序的所有资料,谢谢观赏,2019-8-21,23,输入两个数,输出较大的数。,编写代码:Private Sub Command1_Click() Dim max As Single Dim min As Single max = Val(Text1.Tex
8、t) min = Val(Text2.Text) If max min Then max = min End If Label3.Caption = 较大值为 & maxEnd Sub,If语句,谢谢观赏,2019-8-21,24,编写一个程序,实现当用户输入的用户名和口令都正确时显示欢迎登录的消息对话框,当用户名或口令有错误时显示消息对话框报告错误。(假设用户名为SYL ,密码为“123456”),If语句,谢谢观赏,2019-8-21,25,If语句,编写一个程序,实现当用户输入的用户名和口令都正确时显示欢迎登录的消息对话框,当用户名或口令有错误时显示消息对话框报告错误。,编写代码:Pri
9、vate Sub Command1_Click() Dim user As String Dim psw As String user = Text1.Text psw = Text2.TextEnd Sub,If user =SYL And psw = 123456 Then MsgBox (欢迎您登录本系统!) Else MsgBox (您的用户名或口令有误,请重新输入!) End If,谢谢观赏,2019-8-21,26,If语句,判断某一年是否是闰年。闰年的条件是符合下面二者之一:能被4整除,但不能被100整除; 能被400整除一回归年=365.24219天,谢谢观赏,2019-8-2
10、1,实验,输入一年份,判断它是否为闰年判断标准:年份能被4整除,但不能被100整除,或者能被400整除,27,谢谢观赏,2019-8-21,实验,任意输入三个数,求三个数种最大数和最小数,28,谢谢观赏,2019-8-21,29,IIf( )函数,变量=IIf( 表达式, 当条件为真的值, 当条件为假的值 )Dim intX%, intY%, intMax%intX= 15intY = 10intMax = IIf( intX intY, intX , intY)Print intMax,If intX intY Then intMax = intXElse intMax = intYEnd
11、If,谢谢观赏,2019-8-21,30,IIf( )函数,If user =SYL And psw = 123456 Then MsgBox (正确!) Else MsgBox (错误!) End If,MsgBox IIf(user = SYL And psw = 123456, 正确!, 错误!),IIf(user = SYL And psw = 123456, MsgBox(正确!),MsgBox(错误!),IIf(条件, 表达式1, 表达式2),谢谢观赏,2019-8-21,31,编写一个程序,根据用户输入的某个学生的成绩评出优、良好、中等、及格和不及个五个等级。判断标准如下,If语
12、句,谢谢观赏,2019-8-21,32,编写一个程序,根据用户输入的某个学生的成绩评出优、良好、中等、及格和不及个五个等级。,If语句,谢谢观赏,2019-8-21,33,编写代码:Private Sub Command1_Click() Dim score As Single Dim s As String score = Val(Text1.Text) End Sub,T,If score 60 Then s = 不及格 ElseIf score 70 Then s = 及格 ElseIf score 80 Then s = 中等 ElseIf score 90 Then s = 良好 E
13、lse s = 优 End If Text2.Text = s,If语句,谢谢观赏,2019-8-21,34,学校对学习成绩优良的同学给予奖励,只要满足以下条件之一就可以获得奖励:,所考语文、数学和英语总分在285以上;每门课的成绩都在90分以上;语文和数学的成绩为100分,英语在80分以上。,界面设计:,If语句,谢谢观赏,2019-8-21,35,学校对学习成绩优良的同学给予奖励。,编写代码:Private Sub Command1_Click() Dim a As Single, b As Single, c As Single a = Val(Text1.Text):b = Val(T
14、ext2.Text):c = Val(Text3.Text) If a + b + c = 285 Then Label4.Caption = 可以获奖! ElseIf a = 90 And b = 90 And c = 90 Then Label4.Caption = 可以获奖! ElseIf a = 100 And b = 100 And c = 80 Then Label4.Caption = 可以获奖! Else Label4.Caption = 不可获奖! End IfEnd Sub,T,能改成下面的代码吗? If a + b + c = 285 or a = 90 And b =
15、90 And c = 90 or _ a = 100 And b = 100 And c = 80 Then Label4.Caption = 不可获奖! End If,If语句,谢谢观赏,2019-8-21,36,IF语句的嵌套,If a100 thenIf b100 thenPrint “a,b均大于100”endifEndif,谢谢观赏,2019-8-21,实验,任意输入三个边长,判断是否能构成三角形,若能构成三角形,则判断该三角形是等边、等腰还是一般三角形,37,谢谢观赏,2019-8-21,38,例题,【例】征兵条件:男性1820岁,1.65米以上;女性1618岁,1.60米以上,要
16、求:从键盘输入一个人信息,判断是否符号条件,谢谢观赏,2019-8-21,39,IF语句的嵌套,比较x,y,z的大小,并进行调整,使得xyz效果: X Y Z X Y if(x Y Z,谢谢观赏,2019-8-21,40,IF语句的嵌套,比较x,y,z的大小,并进行调整使得xyzIf x y Thent = x: x = y: y = t EndIf If yz Then t = y: y = z: z = tIf x y Then t = x: x = y: y = tEnd IfEnd If,谢谢观赏,2019-8-21,41,编写一个程序,让用户输入三个数并判断该三个数能否组成一个直角三
17、角形。,If语句,谢谢观赏,2019-8-21,42,编写一个程序,让用户输入三个数判并断该三个数能否组成一个直角三角形。,T,If语句,谢谢观赏,2019-8-21,43,小结,单行结构: If Then 块结构: If Then End If,谢谢观赏,2019-8-21,44,双分支条件语句,块结构: If Then Else End If单行结构:If Then Else ,谢谢观赏,2019-8-21,45,多分支条件语句块IF语句,谢谢观赏,2019-8-21,46,If嵌套,If Then If Then If Then End If End If End If,谢谢观赏,201
18、9-8-21,47,第四章 控制结构程序设计,4,谢谢观赏,2019-8-21,48,多分支结构程序设计Select Case,Select Case 变量或表达式Case 条件1Case 条件2Case ElseEnd Select,谢谢观赏,2019-8-21,多分支结构程序设计Select Case,select case acase 1 msgbox “a等于1”case 2 msgbox “a等于2”case else msgbox “a不等于1也不等于2”end select,49,谢谢观赏,2019-8-21,50,多分支结构程序设计Select Case,测试表达式可以是数学表
19、达式、字符串表达式、逻辑表达式或混合表达式。Case子句后的表达式列表可是以下几种格式:表达式1,表达式2,表达式n表达式1 to 表达式2Is 表达式还可以是上述三种格式的结合,Case 2,4,6,8, VB ,程序设计,Case 60 to 100,Case is60,Case is=60 and is=100(错误),Case 2,4,6,8,10 to 15, is100,谢谢观赏,2019-8-21,多分支结构程序设计Select Case,select case acase 1, 2, 3, 4, 5 msgbox “a大于1,小于5”case 6 to 10 msgbox “a
20、大于1,a小于10”case is10 msgbox “a大于10”case else msgbox “a小于1”end select,51,谢谢观赏,2019-8-21,52,多分支结构程序设计Select Case,当表达式结果与多个Case表达式列表的值匹配时,则只执行第一个匹配的Case语句对应的语句块Case Else子句必须放在全部Case子句语句后面。当表达式的值与前面所有Case语句均不匹配时,才执行Case Else子句部分,这个子句可以省略,谢谢观赏,2019-8-21,多分支结构程序设计Select Case,select case acase is10 msgbox “
21、a大于10”case is20 msgbox “a大于20”case is30 msgbox “a大于30”end select,53,谢谢观赏,2019-8-21,54,真题,以下Case语句中错误的是_。(A)Case 0 To 10 (B)Case Is10(C)Case Is10 And Is10,C,注意:1、Select Case后不能跟多个变量2、不能在条件中出现变量3、不能在条件中出现逻辑表达形式但下面这种情况可以使用Case option1.Value True And Option2.value= True 这里其实是一个表达式的值,属于简单常量形式,谢谢观赏,2019-8
22、-21,55,Select Case a, b, cCase a100MsgBox 输入数据错误Case b100MsgBox “输入数据错误 Case c100MsgBox “输入数据错误 Else Text4.Text = a+b+cEnd Select,注意,谢谢观赏,2019-8-21,56,例子,Select Case Season case 冬季 Total_Price = Price * (1 - 0.15) * num case 春季 , 秋季 Total_Price = Price * (1 - 0.08) * num case else Total_Price = Pric
23、e* numEnd Select,空调机基本单价为2500元。购买空调机的价格随季节而异。冬季购买,优惠15,春、秋季购买,优惠8,夏季购买,不优惠。计算出顾客随季节购买空调机的总价。,思考:用IF块结构如何实现?,谢谢观赏,2019-8-21,57,邮局向国外寄包裹的收费计算如下:当包裹重量不超过15克时收费5元;当包裹重量为15克至30克时收费9元;当包裹重量为30至45克时收费12元;当包裹重量为45克至60克时收费14元;当包裹重量为60克至75克时收费16元;当包裹重量超过75克时收费20元。请编写一个程序根据包裹重量计算邮费。,分析: 本题根据包裹的重量来计算包裹的邮寄费。一个输入
24、量为包裹重量,一个输出量为邮寄费。所以用一个文本框接收输入量,一个文本框作为输出,一个按钮实现“计算”功能,一个按钮实现“退出”功能。,Select Case语句,谢谢观赏,2019-8-21,58,编写代码:Private Sub Command1_Click( ) Dim a as Single, b as Integer a = Val(Text1.text) Select Case a Case Is = 15 b = 5 Case Is = 30 b = 9 Case 30 to 45 b = 12 Case 45 to 60 b = 14,Case 60 to 75 b = 16
25、Case Else b = 20End SelectText2.text = bEnd Sub,Select Case语句,谢谢观赏,2019-8-21,59,编写代码:IF语句实现Private Sub Command1_Click()Dim a As Single, b As Integera = Val(Text1.Text)If a = 15 Then b = 5ElseIf a = 30 Then b = 9ElseIf a = 45 Then b = 12ElseIf a = 60 Then b = 14ElseIf a = 75 Then b = 16,Else b = 20En
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第四 控制 结构 程序设计 课件
链接地址:https://www.31ppt.com/p-1474416.html