第4章 Visual Basic程序设计结构_第1页
第4章 Visual Basic程序设计结构_第2页
第4章 Visual Basic程序设计结构_第3页
第4章 Visual Basic程序设计结构_第4页
第4章 Visual Basic程序设计结构_第5页
已阅读5页,还剩44页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第4章

VisualBasic程序设计结构顺序结构选择结构循环结构

4.1概述在顺序结构中:程序由上到下依次执行每一条语句。在选择结构中:程序判断某个条件是否成立,以决定执行哪部分代码。在循环结构中:程序判断某个条件是否成立,以决定是否重复执行某部分代码。4.2顺序结构

程序由上到下依次执行每一条语句

PrivateSubForm_Click()DimiAsIntegeri=i+1PrintiEndSub

4.2顺序结构赋值语句:将数据保存在一个变量或对象的属性中(从右向左)格式:变量名=表达式DimaAsIntegerDimbAsIntegera=1b=2*aa=a+1

对象名.属性名=表达式DimcapAsStringcap=“窗体标题”Caption=capForm1.Caption=cap4.2顺序结构注释:‘开头,会自动变成绿色不被执行起到说明作用4.3选择结构根据某个条件来决定执行哪部分程序

选择结构if语句select语句单行if语句多行if语句IfxMod2ThenPrint"奇数"

Ifanswer=vbYes

ThenEndEndIf

SelectCaseopt

Case"+“result=a+b

Case"-"result=a-b

Case"*"result=a*b

EndSelect

4.3选择结构如果x是偶数,则输出“偶数”如果ageX<ageY,则salaryX=1500如果text2内容为空,提示“输入数据”If条件

Then

语句块EndIf4.3选择结构2If条件

Then

语句块1‘当条件为真,执行这里Else

语句块2‘当条件为假,执行这里EndIf4.3选择结构

salary=If条件

Then

语句块1‘当条件为真,执行这里Else

语句块2‘当条件为假,执行这里EndIf10001500year<=3year>3year<=3salary=1000salary=15004.3选择结构playerF

玩家1的骰子数playerM玩家2的骰子数If条件

语句块1Else

语句块2EndIfplayerM>=playerFplayerM>=playerFplayerM<playerFMsgBox"~输~了~",,"5555"MsgBox"!!我又赢了",,"yeye"Then4.3选择结构PrivateSublblPlay_Click()DimplayerMAsInteger'保存玩家1的点数

DimplayerFAsInteger'保存玩家2的点数

playerM=Int(6*Rnd+1)'利用随机数产生点数

lblMQQ.Caption=playerM

playerF=Int(6*Rnd+1)

lblFQQ.Caption=playerF

If

playerM>=playerF

Then

MsgBox"~输~了~",,"5555"

Else

MsgBox"!!我又赢了",,"yeye"

EndIfEndSub4.3选择结构3分段函数

y=0If

条件1Then

语句块1

‘当条件1为真,执行ElseIf

条件2Then

语句块2

‘当条件1为假,条件2为真Else

语句块3

‘当条件1为假,条件2为假EndIf1-1x>0x<0x>0y=1y=-1x=0x=0y=04.3选择结构3If

条件1Then

语句块1

‘当条件1为真,执行ElseIf

条件2Then

语句块2

‘当条件1为假,条件2为真,执行Else

语句块3

‘当条件1为假,条件2为假,执行EndIf4.3选择结构4If条件1Then

语句块1‘当条件1成立ElseIf条件2Then

语句块2

‘当条件1不成里,条件2成立……ElseIf条件nThen

语句块n

‘当前面n-1个条件不成立,条件n成立Else

语句块n+1‘当前面n个条件都不成立EndIf

4.3选择结构4score变量保存0~100间的整数作为百分制成绩,Ifscore>90Then

'当成绩>90,Print"A"ElseIfscore>80Then

'当成绩<=90且>80Print"B"ElseIfscore>70Then

'当成绩<=80且>70Print"C"ElseIfscore>60Then

'当成绩<=70且>60Print"D"ElsePrint"E"'当成绩<=60EndIf

4.3选择结构使用什么格式的if语句?If条件

Then...EndIf对1种情况进行处理对2种情况处理If条件

Then

语句块1Else

语句块2EndIf对3种情况处理If

条件1Then

语句块1

ElseIf

条件2Then

语句块2Else

语句块3EndIf对3种以上情况处理If条件1Then

语句块1ElseIf

条件2Then

语句块2……ElseIf

条件nThen

语句块nElse

语句块n+1EndIf

4.3选择结构分段如果x<15,则a=15;否则a=-150x<0x+10≤x<1y=2x1≤x<2x-12≤x<31x≥3ifx<0theny=0elseifx<1theny=x+1elseifx<2theny=2*xelseifx<3theny=x-1elsey=1endif4.3选择结构4SelectCase

条件表达式

Case

表达式结果列表1语句块1Case

表达式结果列表2语句块2

………CaseElse‘可以省略语句块n+1EndSelect

4.3选择结构4SelectCaseopt'根据运算符不同,进行运算不同

Case"+"result=opt1+opt2

Case"-"result=opt1-opt2Case"*"result=opt1*opt2

Case"/"result=opt1/opt2EndSelect

4.5循环结构程序设计循环结构依据某一条件(即循环条件)反复执行某段程序(即循环体)执行循环体的次数,称为循环次数While…WendFor…Next不知道循环次数,宜用while循环知道循环次数,宜用For...Next循环4.5.1While…Wend语句While

循环条件循环体Wend

4.5.1While…Wend语句在窗体上打印输出4个“*”

i=1Whilei<=4print“*”i=i+1Wend1.

i=1*1.

i=22.

i=2**2.

i=33.

i=3***3.

i=44.

i=4****4.

i=55.

i=5循环执行结束4.5.1While…Wend语句程序功能是什么?执行结果是什么?

sum=0:i=1Whilei<=3sum=sum+ii=i+1WendPrintsum,i

1~4所有整数的和1.sum=0i=11.sum=1i=11.sum=1i=22.sum=1i=22.sum=1+2i=22.sum=1+2i=33.sum=1+2i=33.sum=1+2+3i=33.sum=1+2+3i=44.sum=1+2+3i=4644.5.1While…Wend语句练习求100之内所有偶数的和?

While

Wendsum=0:i=2i<=100sum=sum+ii=i+24.5.1While…Wend语句cmdComputetxtInputtxtOutput在txtInput中输入整数单击cmdCompute将1~输入数据间所有奇数的和计算出来结果显示在txtOutput中4.5.1While…Wend语句PrivateSubcmdCompute_Click()DimiAsInteger,sumAsIntegerDimnAsIntegern=Val(txtInput.Text)sum=0:i=1Whilei<=nsum=sum+ii=i+2WendtxtOutput.Text=sumEndSub4.5.1While…Wend语句单击命令按钮cmdCompute,计算1/1+1/2+1/3+1/4....直到最后一项<10-4结果显示在标签lblResult表面cmdComputelblResult4.5.1While…Wend语句PrivateSubcmdCompute_Click()DimiAsSingleDimsumAsSinglesum=0:i=1While

WendEndSub1/i>=0.0001sum=sum+1/ii=i+1lblResult.Caption=sum4.5.1While…Wend语句求100!DimiAsInteger,resultAsDoubleresult=1:i=1Whilei<=100

result=result*ii=i+1Wend4.5.2For…Next语句For

循环变量=初值To

终值Step

步长循环体

Next

循环变量“Step步长”省略时,表示步长为1循环次数=(终值-初值)\步长+1

sum=0

Fori=1To10sum=sum+iNexti4.5.2For…Next语句For

循环变量=初值To

终值Step

步长循环体

Next

循环变量

sum=0

Fori=1To10sum=sum+iNexti4.5.2For…Next语句求100之内偶数的总和求100!求1!+2!…+100!4.5.2For…Next语句求100之内偶数的总和DimIAsInteger,SumAsIntegerSum=0ForI=2To100Step2Sum=Sum+INextI4.5.2For…Next语句求100!DimIAsInteger,SAsS=ForToNextI=1

100

S=S*II1Double4.5.2For…Next语句求100!DimIAsInteger,SAsDoubleS=1ForI=1To100S=S*INextI求1!+2!…+100!DimIAsInteger,SAsDouble,SumAsDoubleS=Sum=ForI=1To100

NextI10S=S*ISum=Sum+S4.5.2For…Next语句用循环结构编程,需要问几个问题:反复执行某个操作?循环次数已知?循环变量初值中值步长?循环体?能否使用循环变量?4.5.2For语句和While语句的对比For-Next循环While-Wend循环不知道循环次数,宜用while循环知道循环次数,宜用For...Next循环4.5.2For语句和While语句的对比输入5个学生成绩,计算平均分循环体,5次:输入成绩

score=Val(InputBox("输入成绩"))

累加

sum=sum+score求平均分

avg=sum/5用什么循环?4.5.2For语句和While语句的对比PrivateSubForm_Click()DimiAsInteger,scoreAsIntegerDimsumAsSingleDimavgAsSingleFori=1To5score=Val(InputBox("输入成绩"))sum=sum+scoreNextiavg=sum/5EndSub4.5.2For语句和While语句的对比输入若干学生成绩,计算平均分,直到某次输入<0的数据为止score=Val(InputBox("输入成绩"))循环条件score>=0:累加

sum=sum+score

输入成绩

score=Val(InputBox("输入成绩"))求平均分

avg=sum/54.5.2For语句和While语句的对比PrivateSubForm_Click()DimiAsInteger,scoreAsIntegerDimsumAsSingleDimavgAsSinglescore=Val(InputBox("输入成

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论