




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第四章程序设计基础教学目的及要求:使学生掌握顺序结构、分支结构、循环结构的语法规则和具体应用,程序调试的步骤和方法。重点与难点:1、熟练掌握表达式、赋值语句及逻辑表达式等的书写约定2、掌握InputBox和MsgBox函数的用法3、掌握单分支和多分支条件语句4、熟练掌握For语句和While语句的使用5、难点是多重循环的程序设计主要外语词汇:context、prompt、msgbox、inputbox授课内容:1、三种基本结构:顺序结构、选择结构、循环结构2、流程图:(1)传统的流程图(2)N-S流程图第一节顺序结构程序设计特点:按书写时的顺序依次执行。一、VB中的语句及书写约定:1、自动语法检测2、格式化处理3、续行符:下划线,一条语句写在多行上。下划线与其前面的字符之间至少要有一个空格。4、复合语句行:冒号,多条语句写在一行上。二、赋值语句:1、可以给一个变量或某一个对象的属性赋值。格式1:变量名=表达式格式2:[对象名.]属性名=属性值若省略对象名,则默认是当前窗体。方向性:从右向左赋值。2、最终的结果是最后一次的赋值。3、数据类型要匹配,注意相容现象:(1)逻辑型->数值型:True->-1,False->0数值型->逻辑型:非0->True,0->False(2)实型->整型:四舍五入原则,不是去尾原则整型->实型:扩展小数位数4、不管表达式是什么数据类型,都可以赋给一个Variant变量。5、系统提供的默认初始值:(1)数值型:0(2)货币型:0(3)字符型:空字符串(4)逻辑型:False(5)日期型:0:00:00(6)可变型:Empty(7)对象型:Nothing6、不能连续赋值:例:DimaAsInteger,bAsInteger,cAsIntegera=b=c=1错误a=1:b=1:c=1正确7、交换两个变量中的数据:例:a=b:b=a错误t=a:a=b:b=t正确,t是中间变量注意:VB中的数字和只包含数字的字符串可以方便地互换类型,例:(1)隐式转换:PrivateSubCommand1_Click()DimxAsInteger,yAsStringy=“100.23”:x=y‘隐式转换PrintxEndSub(2)显式转换字符型->数值型:利用Val函数:PrivateSubCommand1_Click()DimxAsIntegerText1.Text=“100.23”x=Val(Text1.Text)‘显式转换PrintxEndSub(3)显式转换数值型->字符型:利用Str函数:PrivateSubCommand1_Click()DimxAsIntegerx=100.23Text1.Text=Str(x)‘显式转换PrintText1.TextEndSub三、注释、暂停、结束语句:1、注释语句:非执行语句(1)格式1:Rem注释语句(2)格式2:‘注释语句(常用)(3)块注释:视图->工具栏->编辑->设置注释块、解除注释块2、暂停语句:格式:Stop暂停程序的运行,但不关闭所有已打开的文件,相当于在程序代码中设置断点,主要用于调试程序。3、结束语句:格式:End停止程序的运行,关闭所有已打开的文件。还可以用来结束一些模块的操作。例:PrivateSubCommand2_Click()EndEndSub四、输入函数InputBox:在一对话框中显示提示,等待用户输入内容,并返回包含文本框内容的字符串。1、格式:InputBox(prompt[,title][,default][,xpos,ypos][,helpfile,context])(1)prompt:对话框的消息提示文字。(2)title:对话框的标题,标题省略取默认值“工程1”。(3)default:文本框的默认输入信息。2、InputBox函数的返回值是字符型的。3、每运行一次InputBox函数只能给一个变量赋值。总结:输入数据的方法:1、在程序代码中直接指定:优点:代码简单缺点:缺少灵活性2、利用TextBox文本框输入数据:优点:可以输入任意值缺点:要添加多个文本框,界面复杂3、利用InputBox函数输入数据:优点:界面简单,可以输入任意值缺点:代码复杂,参数较多五、消息函数和语句MsgBox:在一对话框中显示消息,等待用户单击按钮,并返回包含文本框内容的字符串。1、MsgBox函数:(1)格式:MsgBox(prompt[,buttons][,title][,helpfile,context])①prompt:对话框的消息提示文字。②buttons:a)组合值,每组只能取一个数字,数字间用“+”连接。b)进行相加(只有唯一的分解方式)。c)使用VB常数。(表4-1)d)方式a)和方式c)可以结合起来使用。e)把“+”换成“Or”例:3+32+035vbYesNoCancel+vbQuestion+vbDefaultButton1vbYesNoCancel+32+vbDefaultButton1③title:对话框的标题,标题省略取默认值“工程1”。(2)MsgBox函数的返回值是整型的:1-7(表4-2)例:PrivateSubForm_Load()DimaAsIntegerShowa=MsgBox("请你选择:",3+32+0,"Buttons参数组合举例")Ifa=6ThenUnloadForm1Form2.ShowEndIfIfa=7ThenUnloadForm1Form3.ShowEndIfIfa=2ThenEndEndIfEndSub2、MsgBox语句:仅仅用于显示一些简单的信息而不需要返回值。格式:MsgBoxprompt[,buttons][,title][,helpfile,context]参数含义:同上不用写小括号,没有返回值,可以单独作为一个语句来使用。六、数据输出:Print方法的缺省输出:从窗体的第1行第1列开始输出。1、Tab函数:格式:Tab(n),参数n是绝对列数值。(1)Tab函数与表达式之间用分号分隔。(2)如果当前行的打印位置大于n,则Tab将打印位置移动到下一行的第n列上。(3)如果n小于1,则Tab将打印位置移动到该行的第1列。(4)如果n大于输出行的宽度,则Tab函数用以下公式计算下一个打印位置:nMod行宽。2、Spc函数:格式:Spc(n),参数n是相对列数值。(1)Spc函数与表达式之间用分号分隔。(2)如果n小于输出行的宽度,则下一个打印位置将紧接在数个已打印的空白之后。(3)如果n大于输出行的宽度,则Spc函数用以下公式计算下一个打印位置:当前打印位置+(nMod行宽)。3、Space函数:格式:Space(n),输出n个空格注:Spc函数与Space函数作用相同,但Space函数可以使用字符串运算符&和+。总结:输出行的控制:Print后面不跟表达式,只输出一行空行。输出列的控制:用Tab、Spc或Space函数调整。七、输出到打印机:1、直接输出:格式:Printer.Print[表达式]只能打印文本信息,不能打印图形图像信息。(1)Page属性:用来设置页码,默认缺省值为1。(2)NewPage方法:强制打印机跳到下一页打印。(3)EndDoc方法:用来结束文件的打印。2、窗体输出:格式:[窗体.]PrintForm既将信息输出到窗体,又将信息输出到打印机。预览作用(1)[窗体.]AutoRedraw=True(2)可以打印窗体上的文本、任何可见的控件及图形信息。附:方法与函数的区别:(1)方法可以单独作为语句使用,函数不可以。(2)方法没有返回值,函数有返回值。(3)方法的格式:[对象.]方法[参数列表]函数的调用格式:函数名([参数列表])(4)方法是隶属于某一个对象的,函数存在于VB自带的函数库。第二节选择结构程序设计特点:根据指定的条件进行判断,根据判断的结果在两条分支或多条分支路径中选取其中的一条执行。一、行If语句:单行形式,双分支结构格式1:If条件Then语句组1格式2:If条件Then语句组1Else语句组2语句组中的多个语句之间用冒号分隔。二、块If语句:多行形式,双分支结构格式3:If条件Then格式4:If条件Then语句组1语句组1EndIfElse语句组2EndIf1、Else必须单独一行。2、If…EndIf必须成对出现。行If语句中不需要EndIf。3、最好采用缩进形式。4、如果语句组1、语句组2中含有多条语句时,最好使用块If语句。三、If语句的嵌套:多分支结构四、ElseIf语句:多分支结构格式:If条件1Then语句组1ElseIf条件2Then语句组2……ElseIf条件nThen语句组nElse语句组n+1EndIf1、VB首先测试条件1,如果它为False,VB就测试条件2,依次类推,直到找到一个为True的条件。此时,VB就会执行相应的语句组,然后执行EndIf后面的语句。2、不能交叉嵌套,只能完全嵌套。3、可以使用任意数量的ElseIf语句。4、只有一个EndIf与If相对应。例题4-5:方法一:Ifcj>=0Andcj<60ThenPrint"不及格"ElseIfcj>=60Andcj<75ThenPrint"及格"ElseIfcj>=75Andcj<90ThenPrint"良好"ElseIfcj>=90Andcj<=100ThenPrint"优秀"EndIfEndIfEndIfEndIf方法二:Ifcj>=90Andcj<=100ThenPrint"优秀"ElseIfcj>=75ThenPrint"良好"ElseIfcj>=60ThenPrint"及格"ElsePrint"不及格"EndIfEndIfEndIf方法三:Ifcj>=90Andcj<=100ThenPrint"优秀"ElseIfcj>=75ThenPrint"良好"ElseIfcj>=60ThenPrint"及格"ElsePrint"不及格"EndIf方法四:SelectCasecjCase90To100Print“优秀”Case75To89Print“良好”Case60To74Print“及格”CaseElsePrint“不及格”EndSelect五、多条件选择语句SelectCase:多分支结构格式:SelectCase测试表达式Case表达式1语句组1Case表达式2语句组2……Case表达式n语句组n[CaseElse语句组n+1]EndSelect改进:SelectCase测试表达式‘复合语句Case表达式1:语句组1Case表达式2:语句组2……Case表达式n:语句组n[CaseElse:语句组n+1]EndSelect1、测试表达式只能是数值型或字符型。2、测试表达式只计算一次,然后VB将表达式的值与结构中的每个Case的值进行比较,如果相等,就执行与该Case相关联的语句组。3、如果不止一个Case与测试表达式相匹配,则只对第一个匹配的Case执行与之相关联的语句组。4、表达式n的可能形式:(1)表达式1[,表达式2][,表达式3]……无大小顺序。(2)表达式1To表达式2包括表达式1和表达式2在内。(3)Is<关系运算符><表达式>只能是简单的条件,不能用逻辑运算符将两个或多个条件组合在一起。以上三种形式可以混合使用。六、条件判断函数IIf:双分支结构格式:IIf(条件,表达式1,表达式2)1、当条件为真时,函数返回值是表达式1的值;当条件为假时,函数返回值是表达式2的值。例:PrintIIf(cj>=60,“通过”,“不通过”)2、IIf函数可以嵌套使用。例:PrintIIf(a<0,-1,IIf(a=0,0,1))总结:1、行If语句:双分支结构2、块If语句:双分支结构3、If语句的嵌套:多分支结构4、ElseIf语句:多分支结构5、多条件选择语句SelectCase:多分支结构6、条件判断函数IIf:双分支结构第三节循环结构程序设计1、特点:根据给定条件是否满足决定是否继续执行循环体中的操作。注:避免出现“死循环”。当程序运行了“死循环”的结构,必须按Ctrl+Break中断。2、三种循环结构:(1)For…Next(2)While…Wend(3)Do…Loop3、循环方式:(1)计数法(2)标志法一、For循环结构:格式:For循环变量=初值To终值[Step步长]循环体Next[循环变量]1、缺省步长时,默认是1。步长可以为正值或为负值。2、先判断条件,后执行循环体。注:若循环体执行n次,则条件将被判断n+1次。3、ExitFor语句的作用:提前退出循环体,结束循环结构。4、空循环的作用:延时。5、For循环一般用在已知循环次数的情况。6、多重循环:不能交叉嵌套,只能完全嵌套。各层次的循环变量名不能相同。7、多重循环可以共用一个Next语句,但此时循环变量名不能省略,并且先内循环变量,后外循环变量。例:Fori=1To10Forj=1To15Fork=1To20循环体NextkNextjNexti二、当型循环While…Wend结构:格式:While条件循环体Wend1、先判断条件,后执行循环体。注:若循环体执行n次,则条件将被判断n+1次。2、循环体内一定要有改变条件的语句,否则就会导致“死循环”。3、多重循环:不能交叉嵌套,只能完全嵌套。例题4-11:求两个数的最大公约数。(1)该程序算法:(2)PrivateSubText1_KeyPress(KeyAsciiAsInteger)IfKeyAscii=13ThenText2.SetFocusEndSub注:CommandButton的Default属性默认是False,该属性设置为True时,说明该按钮是缺省按钮,按回车键就相当于单击了该按钮。两者不能相互冲突。三、Do…Loop循环结构:先判断后执行先执行后判断当型循环DoWhile条件循环体Loop与While…Wend结构相同Do循环体LoopWhile条件直到型循环DoUntill条件循环体LoopDo循环体LoopUntill条件1、既可以是当型循环,也可以是直到型循环。2、While与Untill后面的“条件”总是相反的。3、既可以先判断后执行:若循环体执行n次,则条件将被判断n+1次。也可以先执行后判断:若循环体执行n次,则条件将被判断n次。4、ExitDo语句的作用:提前退出循环体,结束循环结构。总结:提前退出循环体的方法:(1)For…Next:用ExitFor语句(2)While…Wend(3)Do…Loop:用ExitDo语句Page79:i=1DoWhilei<=99s=s+iIfs>2000ThenExitDoEndIfi=i+2Loop例题4-10:方法一:用For循环结构Fori=1To9Forj=1ToiPrintTab(j*8);j&"×"&i&"="&j*i;NextjPrintNexti方法二:用While…Wend循环结构i=1Whilei<=9j=1Whilej<=iPrintTab(j*8);j&"×"&i&"="&j*i;j=j+1WendPrinti=i+1Wend方法三:用Do…Loop循环结构i=1DoWhilei<=9j=1DoWhilej<=iPrintTab(j*8);j&"×"&i&"="&j*i;j=j+1LoopPrinti=i+1Loop例题4-5:DimcjAsIntegercj=InputBox(“请输入学生的成绩:0~100分:”)DoWhileTrueIfcj>=0Andcj<=100ThenExitDoElseMsgBox“必须输入0~100分之间的整数!”cj=InputBox(“请输入学生的成绩:0~100分:”)EndIfLoop例题4-13:方法一:用While…Wend循环结构f=0i=2Whilei<=n-1Andf=0IfnModi=0Thenf=1Elsei=i+1EndIfWend方法二:用For循环结构f=0Fori=2Ton-1IfnModi=0Thenf=1ExitForEndIfNexti方法三:用Do…Loop循环结构f=0i=2DoWhilei<=n-1IfnModi=0Thenf=1ExitDoEndIfi=i+1Loop总结:1、For循环结构:计数法。2、While循环结构:计数法、标志法,可以实现多条件判断。3、Do…Loop循环结构:计数法、标志法,可以实现多条件判断。第四节其他辅助语句一、Goto语句:功能:无条件地转向执行语句标号或行号的语句。1、格式1:Goto语句标号语句标号后面必须加一个冒号。2、格式2:Goto行号行号后面不能加冒号。二、On-Goto语句:缺点:BS现象辅助教学情况:多媒体课件、VisualBasic6.0复习思考题、作业题思考当窗体的名称改为form1时,该窗体的对象名是什么。教材习题一1、2、3、4、5参考教材或资料:《VisualBasic程序设计教程》,刘炳文许蔓舒编著,清华大学出版时间一锅米饭,放到第二天,水气就会干一些;放到第三天,味道恐怕就有问题;第四天,我们几乎可以发现,它已经发馊;再放下去,恐怕就要发霉了。是什么原因,使那锅米饭变馊变坏——是时间。可是,在烟雨的江南,年轻的父母生下女儿,他们就在地窖里,埋下一缸缸米酒,十七、八年以后,女儿长大了,这些酒就成为嫁女儿、婚礼上的佳酿。它有一个美丽而惹人遐思的名字,叫女儿红。是什么使那些平凡的米,变成芬芳甘醇的酒——也是时间。到底,时间是善良的,还是邪恶的魔术师呢?或许都不是,时间只是一个简单的指数符号,它会把原来倍增而已。开始变坏的米饭,每一天都不断变得更腐臭,而开始变醇的美酒,每一分钟,都在继续增加它的芬芳。在人世间,我们也曾经看过天真的少年一旦开始堕落,便不免愈陷愈深,终于变得满面风尘,面目可憎。但相反的,时间却把温和的笑痕,体谅的眼神,成熟的风采,智慧的神韵添加在那些追寻善良的人身上。同样是煮熟的米,馊饭与美酒的差别在哪里呢?就在那一点点的酒曲。皆出父母,谁堕落如禽兽,而谁又能提升成完美的人呢?是内心深处,紧紧环抱不放的,捉摸不透的欲望。与其问,时间将怎样对待你我。不如问,你我将如何对待时间。你就是一道风景生于世界上,存于宇宙间,你不比别人多,也不比别人少,同顶炎炎烈日,共沐皎皎月辉,心智不缺,心力不乏,只要你勇于展示自己的才华、个性及风采,那么,你就没必要去仰视别人。你,就是一道风景!不要隐于云海峰峦之后,不必藏于青竹绿林之中,你就是巍巍山峦的一石,就是苍苍林莽中的一株。所以你没必要敬畏名山大川,没必要去赞叹大漠孤烟,你的存在,其立身就在解释世上所有的景致;你的存在,正注释着时代的一种风情!不必去拥挤了,你就站在属于自己的位置上,不断地展示你内心世界的丰富内涵,给苍白的四周以绮丽,给庸俗的日子以诗意,给沉闷的空气以清新,每日拭亮一个太阳,用大自然的琴弦,奏响自己喜爱的心曲。自然美具有不以人们意志为转移的自然性,梅花自有梅花的风韵,红杏自有红杏的丽姿,如今认清自己往往比注视别人更为重要。没必要一味褒扬别人贬低自己,应该果敢地站起,与最佳景观比肩,只要你不懈追求,相信你,不比别人差。真的,你行!翠竹之秀丽,青松之壮美,杨柳之潇洒,兰草之温柔,自然赋予各异风情,都在各自的一片土地上展示生命的光辉。如今所需的不是自谦,而是自信。很久很久了,虚假的谦逊毁掉个性的展露,模仿、装扮、整容,使人无法认清你的真面目,不知哪个是你自己,那情景似古代砖窑烧出的规格相同的陶俑。风景这边独好!妙在独好。我们太忽视这个“独”了。世上被人们公认的景点都是独特的:埃及金字塔,中国古长城;法国凯旋门,罗马斗兽场……世上被人赞誉的美景也别具风采:泰山日出,威尼斯水缄,热带雨林,撒哈拉大沙漠……大凡能被我们记住的人多富有个性特征:阿Q的“快乐”,鲁滨逊的坚毅,王熙风的笑里藏刀,奥赛罗嫉妒杀人……让个性伴你,站着该是一座山,倒下便是路基;完整时给人启示,粉碎时使人警醒……你不比别人多,也不比别人少,你不用注视人们的眸光便可知道,你在阳光下用身影发表宣言:你就是一道风景!大气戈壁上的胡杨活着三百年不死,死了三百年不倒,倒了三百年不朽。飞沙走石中守住了生命的鲜活,孤苦凄然中昂起了信念的不屈。胡杨的勃然生机挺拔出了撼人的大气。秋风中的竹子虽消瘦但不折腰,虽孤独但不动摇,虽忧思但不哀鸣,任凭寒夜苦雨萧瑟,依然傲骨拔节凌空。竹子的冲天豪情正直出了高亢的大气。池塘里的莲花身陷污泥而不染,一身清白不自怜,纵使面对丑恶也不悲戚,昂首独立更为清高。莲花丹青难写之精神顶立起风骨的大气。大气,便是冲破贫瘠和困苦之折磨即使有万千磨难也要心揣梦想播撒爱意的生气。嫩嫩的企盼不灭,目光便总是向前,重重的责任肩负,生长丰厚了痴迷的期待。大气,便是卑微不失凌云之志,平凡犹有不可欺之尊的骨气,用自己找寻使自己的足迹不欲,跌倒爬起照
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 护理年度述职报告
- 食品经营租赁协议书
- 茶园买卖合同协议书
- 被打轻伤和解协议书
- 辅助检查委托协议书
- 车辆维修包干协议书
- 集体产权转让协议书
- 创维业务员合同协议书
- 驻厂人员保密协议书
- 金融产品购买协议书
- (正式版)JC∕T 60021-2024 石膏基自流平砂浆应用技术规程
- 日杂店购销合同清单
- 非遗文化传承课件
- 小程序合作协议书
- 天津市滨海新区2022-2023学年高二下学期期末数学试题(学生版)
- 交通安全与事故预防智慧树知到期末考试答案章节答案2024年山东理工大学
- 办公区域主要风险辨识与分级管控清单
- 新学位法专题讲座课件
- 2024年辽宁铁道职业技术学院单招职业技能测试题库及答案解析
- 春夏秋冬主持稿
- 【危险化学品经营单位安全管理人员】考试600题及解析
评论
0/150
提交评论