收藏 分销(赏)

程序设计与计算.pptx

上传人:天**** 文档编号:5911704 上传时间:2024-11-23 格式:PPTX 页数:363 大小:2.78MB
下载 相关 举报
程序设计与计算.pptx_第1页
第1页 / 共363页
程序设计与计算.pptx_第2页
第2页 / 共363页
程序设计与计算.pptx_第3页
第3页 / 共363页
程序设计与计算.pptx_第4页
第4页 / 共363页
程序设计与计算.pptx_第5页
第5页 / 共363页
点击查看更多>>
资源描述

1、单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,第六级,第七级,第八级,2021/12/15,第,0,章,绪论,程序与程序设计语言,程序设计方法,算法,计算思维,0.1 程序与程序设计语言,程序,程序设计语言,机器语言,汇编语言,高级语言,0.1 程序与程序设计语言,机器语言,10111000,00000001,00000100,00000010,汇编语言,MOV AL,1,ADD AL,2,高级语言,x=1+2,0.2 程序设计方法,结构化的程序设计,3种基本结构,即顺序结构、选择结构和循环结构,面向对象的程序设计,类、对象,属性、事件、方法,0-2,程序

2、设计方法,结构化的程序设计思想,面向对象的程序设计思想,0.2.1 结构化的程序设计,程序设计划分为,3,种基本结构,即顺序结构、选择结构和循环结构,顺序结构,当需要按照语句的先后次序从上到下依次执行每条语句时,采用顺序结构,选择结构,当需要根据某个条件选择执行程序的不同部分时,采用选择结构,循环结构,当需要根据某个条件是否成立决定是否反复执行某段程序时,采用循环结构,0.2.2 面向对象的程序设计,类,:,同类事物抽象,“车”可以抽象成一个类,可以划分为“跑车”、“轿车”、“越野车”、“货车”等子类,对象,:类中的每个具体事物,“轿车”类中某个具体车牌为“京A123456”则为一个具体的对象

3、,0.2.2 面向对象的程序设计,对象的属性,:,静态特征,“轿车”类有“车牌”、“品牌”“、“型号”、“颜色”、“是否四轮驱动”等属性,对象的事件,:,动态特征,外界触发,“踩刹车”,对象的方法,:,动态特征,本身执行,“停止”,0.3 算法,算法:描述解决问题的步骤,算法的描述:标准流程图,0.3 算法,算法策略,穷举法,贪心法,分治法,回溯法,0.4 计算思维,是运用计算机科学的基础概念进行问题求解、系统设计、以及人类行为理解等涵盖计算机科学之广度的一系列思维活动。,一种基本思考方式与技能。,0.4 计算思维,对于程序设计语言来说,其中包含着如下计算思维的概念:,数据的组织,结构的模块化

4、,数据的传递,数据的处理,第1章 Visual Basic 6.0简介,Visual Basic 6.0概述。,Visual Basic 6.0的集成开发环境。,Visual Basic程序组成与特点。,1.1 Visual Basic 6.0概述,特点,面向对象,可视化,事件驱动,版本,学习版,专业版,企业版,Visual Basic 6.0中文企业版,1.1.1 Visual Basic 6.0的启动和退出,1.1.2 Visual Basic 6.0的集成开发环境,1.标题栏,三种工作状态,2.菜单栏,Visual Basic,提供的所有命令,3.工具栏,工具栏为常用菜单命令提供了快捷方

5、式工具栏,1.1.2 Visual Basic 6.0的集成开发环境,4.工程资源管理器窗口:查看工程结构,1.1.2 Visual Basic 6.0的集成开发环境,5窗体设计器窗口:查看对象,设计界面,1.1.2 Visual Basic 6.0的集成开发环境,6窗体布局窗口:设定窗体在屏幕初始位置,1-3 VB6.0的集成开发环境,7工具箱:管理控件,标准exe工程所带有的控件,1.1.2 Visual Basic 6.0的集成开发环境,8属性窗口:,设定对象的属性值,name属性,对象的名字,每个对象name不同,caption属性,对象的标题,1.1.2 Visual Basic 6

6、.0的集成开发环境,9,代码编辑器窗口,:编写代码,1.1.2 Visual Basic 6.0的集成开发环境,自动列出对象的属性和方法:,1.2 Visual Basic程序概述,1.2.2 面向对象思想,属性,对象名.属性名=属性值,事件,Private Sub对象名_事件名(参数),End Sub,方法,对象名.方法名 参数,第,2,章,VB,程序设计步骤,Visual Basic 6.0,的程序设计步骤,窗体,常用控件,2.1 一个简单的VB6.0程序,新建工程。,设计程序界面。,设置对象属性。,编写程序代码。,运行程序。,保存程序。,生成可执行文件。,2.1 一个简单的VB6.0程序

7、,2.2 窗 体,在代码编写阶段,每个窗体对应着一个代码窗口,当程序运行阶段,每个窗体就对应着一个窗口,2.2 窗 体,属性,Name:,窗体的唯一标识,Caption:标题,Picture:窗体中显示的图片,2.2 窗 体,事件,单击(,Click,):单击一个窗体的空白区域时触发,装入(,Load,):当窗体装入内存时触发该事件,通常在该事件发生时进行控件、变量的初始化工作,问题:窗体显示时,窗体的背景颜色设置为红色,2.2 窗 体,方法,Print,:用于在窗体上输出数据,Print Hello World,在当前窗体上输出“Hello World”,a=10,Print,a+20,计算

8、结果并输出,30,2.2 窗 体,方法,分号,紧凑格式 逗号,松散格式,Private Sub Form_Click(),a=10,Print a+20的值为:;紧凑格式,Print a+20,Print a+20的值为:,松散格式,Print a+20,End Sub,a+20的值为:30,a+20的值为:30,2.2 窗 体,方法,Cls,:清除在窗体上输出的数据或图形,,Private Sub Form_Click(),Cls,Print Hello World,End Sub,2.3 常用控件,按钮CommandButton控件,标签Label控件,文本框TextBox控件,2.3.1

9、 CommandButton控件,Caption属性:命令按钮上显示的文字。,Click事件:单击时发生,2.3.2 Label控件,显示用户不能直接修改的静态文本时使用的,Caption属性:显示在标签中的文本,AutoSize属性:控件是否能够自动改变尺寸以适应内容,2.3.3 TextBox控件,文本框TextBox控件:用来获取用户输入的文本,比如用户名、口令等,Text属性:文本框中的文本,Locked属性:文本框是否能输入,MultiLine属性:文本框是否能够输入多行文本,2.3.3 TextBox控件,SelLength属性:选中文本的长度,SelStart属性:选中文本的起始

10、位置,SelText属性:选中的文本,GotFocus事件:文本框得到焦点时触发,LostFocus事件文本框得到焦点时触发,SetFocus方法使文本框获得焦点,可以直接接收键盘输入,2.3.3 TextBox控件,第,3,章,Visual Basic,程序设计基础,数据类型,运算符和表达式,常用内部函数,3.1,数据类型,3.1.1基本数据类型,Integer (整型),%,Long (长整型),&,Single (单精度实型),!,Double (双精度实型),#,String (字符串类型),$,Boolean(布尔型),Date (日期型),Variant (变体类型),3.1,数据

11、类型,3.1.2,常量:,程序运行时值不改变,整型:12,3,1,长整型:,-2147483640,,1&,单精度实型:1.2,-3.4,-1.0,!,双精度实型:,-3.5e55,-1.0#,字符串:“hello world”,“”,布尔型,:Ture真,False 假,日期型:,#10/12/2005 10:10:10#,3.1,数据类型,3.1.3,变量,1,变量的定义,:,Dim,变量名,1 As,类型,1,变量名,2 As,类型,2,Dim a As Integer,b As Integer,定义两个整型变量,a,和,b,省略数据类型则变量为,Variant,类型,Dim a,b A

12、s Integer,定义变量,a,为,Variant,类型,变量,b,为,Integer,类型,3.1,数据类型,Private Sub Command1_Click(),Dim a As Integer,b As Integer,Print a,a=1,b=2,Print a+b,End Sub,整型变量a,b初始值默认为0,0,3,3.1,数据类型,Private Sub Command1_Click(),Dim a As Single,b As Single,a=1.2,b=2.3,Print a+b,End Sub,浮点型变量a,b初始值默认为0.0,3.5,3.1,数据类型,Priv

13、ate Sub Command1_Click(),Dim s As String,s=hello world,Print,s,End Sub,字符串变量s初始值默认为“”空串,hello world,3.1,数据类型,Private Sub Command1_Click(),Dim f As Boolean,Print f,f=True,frmInfo.Visible=f 窗体可见,End Sub,布尔变量f初始值默认为False,False,3.1,数据类型练习,Private Sub Form_Click(),Dim a As Integer,b As Integer,c As Integ

14、er,Dim delta As Single,Dim root1 As Single,root2 As Single,End Sub,求二元一次方程的两个根,,系数保存在变量a,b,c中,,根保存在变量root1,root2中,,判别式保存在变量delta中,怎样定义变量?,3.1,数据类型*,通用|声明,Dim,变量名,1 As,类型,1,变量名,2 As,类型,2,3.1,数据类型*,Dim a As Integer,Private Sub Command1_Click(),a=a+1,Print a,End Sub,Private Sub Command2_Click(),a=a+1,P

15、rint a,End Sub,3.1,数据类型*,Private Sub Command1_Click(),Dim a As Integer,a=a+1,Print a,End Sub,Private Sub Command2_Click(),Dim a As Integer,a=a+1,Print a,End Sub,3.2 运算符和表达式算数,算术运算符,运算符,名称,+,加,-,减,*,乘,/,除,乘方,整除,Mod,求余(取模),-,取负,32,32,3 mod 2,9,1,1,3.2 运算符和表达式算数,写出表达式:b,2,-4ac,写出表达式 -b+delt,2a,b*b-4*a*

16、c,(-b+delt)/(2*a),3.2 运算符和表达式关系,关系运算符和关系表达式,(a=2,b=3),=,等于,或,大于,=,大于或等于,b,a=b,a=b,False,True,False,True,False,True,3.2 运算符和表达式关系,可以通过 表达式判断x是奇偶数,当表达式为真表示 整型变量x可以被2整除,不能被3整除的表达式,(x Mod 2)=0,(x Mod 3)0,3.2 运算符和表达式逻辑,逻辑运算符和逻辑表达式,Not,非,对单个表达式的逻辑值取反,即由真变假或由假变真,And,与,两个表达式都为,True,时,整个表达式的值为,True,否则为,False

17、,Or,或,两个表达式有一个为,True,时,整个表达式的值为,True,否则为,False,SARS:高烧 肺部阴影,Texi:下雨 赶时间,Or,And,3.2 运算符和表达式逻辑,与数学表达式,a,x,b,对应的,Visual Basic,表达式是,_,。,a=2,b=3,x=4,a=x=b,1=b True,(a=x)And(x3,Int(a)Int(b),复习,当表达式为真,表示变量x是小于100的非负数,当表达式为真,x不可以被3或5整除,(0 x)And(x100),(x Mod 3)Or(x Mod 5),注意:算数非0,逻辑True,算数0 逻辑False,复习,Print“

18、hello”&chr(10)&“world”,Dim s As String,s=ZhangHua ,Print,Len,(,Trim,(s),hello,world,8,复习,Month(Now),Dim s As String,s=3.2“,定义变量保存s的值的平方,10,Dim result As Single,result=Val(s)2,3.3 常用内部函数InputBox函数,emailAdd=InputBox(,“请按照下面的默认格式,输入邮件地址”,邮件地址,aa,),InputBox,函数可以产生一个输入对话框,3.3 常用内部函数InputBox函数,InputBox,函数

19、可以产生一个输入对话框,emailAdd=,InputBox,(,),“请按照下面的默认格式”,输入邮件地址,邮件地址,aa,Chr(10),&,&,InputBox,的,返回值,,即,InputBox,函数执行的结果值,,是一个字符串,单击“确定”,输入的内容,单击“取消”,一个空字符串,“”,Dim emailAddr As,String,emailAddr=,InputBox(“,请按照下面的默认格式,”,&Chr(10)&“,输入邮件地址,”,邮件地址,aa),3.3 常用内部函数InputBox函数,3.3 常用内部函数InputBox函数,确定:,emailAddr=“liping

20、”,取消:,emailAddr=,“”,3.3 常用内部函数InputBox函数,练习P56-6,Dim account As String,accountInputBox(“输入帐号”,“存款”,“123.123456789),3.3 常用内部函数InputBox函数,利用输入框提示输入一个正整数,在窗体上输出其平方根,例如:输入4,输出,4的平方根是:2,3.3 常用内部函数InputBox函数,3.3 常用内部函数InputBox函数,Private Sub Form_Click(),Dim number As,String,Dim result As Double,number=Inp

21、utBox(输入正整数,求平方根),result=,Sqr,(,Val(,number,),),Print number&的平方根是:&result,End Sub,3.3 常用内部函数MsgBox函数,作用:,用于产生一个消息对话框,3.3 常用内部函数MsgBox函数,对话框结构,3.3 常用内部函数MsgBox函数,常用格式1:,MsgBox 提示文本,用处:,只做简单提示,例如:,MsgBox 除数不能为0,3.3 常用内部函数MsgBox函数,常用格式2:,MsgBox 提示文本,图标,用处:,只做简单提示,例如:,MsgBox 除数不能为0,vbCritical,3.3 常用内部函

22、数MsgBox函数,常用格式3:,MsgBox 提示文本,图标,标题,用处:,只做简单提示,例如:,MsgBox 除数不能为0,vbCritical,错误提示,3.3 常用内部函数MsgBox函数,MsgBox ,内存不足,vbCritical,“系统提示,3.3 常用内部函数MsgBox函数,常用格式4:,dim answer as,integer,answer=MsgBox,(,提示文本,图标+按钮组合,标题,),用处:,MsgBox函数的返回值,就是用户按下按钮,保存,在answer中,例如:,Dim answer As Integer,answer=MsgBox(,+,),确实想退出么

23、?,vbQuestion,vbYesNo,退出提示,vbYes,vbNo,3.3 常用内部函数MsgBox函数,Private Sub cmdExit_Click(),Dim answer As Integer,answer=MsgBox(“确实想退出么?”,vbYesNo+vbQuestion,退出提示),If,answer=vbYes,Then,End,End If,End Sub,第,4,章,Visual Basic,程序设计结构,顺序结构,选择结构,循环结构,4.1 概述,在顺序结构中:程序由上到下依次执行每一条语句。,在选择结构中:程序判断某个条件是否成立,以决定执行哪部分代码。,在

24、循环结构中:程序判断某个条件是否成立,以决定是否重复执行某部分代码。,4.2,顺序结构,程序由上到下依次执行每一条语句,Private Sub Form_Click(),Dim i As Integer,i=i+1,Print i,End Sub,4.2,顺序结构,赋值语句:,将数据保存在一个变量或对象的属性中(从右向左),格式:,变量名,=,表达式,Dim a As Integer,Dim b As Integer,a=1,b=2*a,a=a+1,对象名.属性名,=,表达式,Dim cap As String,cap=“窗体标题”,Caption=cap,Form1.Caption=cap,

25、4.2,顺序结构,注释:,开头,会自动变成绿色,不被执行,起到说明作用,4.3 选择结构,根据某个条件来决定执行哪部分程序,选择结构,if语句,select语句,单行if语句,多行if语句,If,x Mod 2,Then,Print,奇数,If,answer=vbYes,Then,End,End If,Select Case,opt,Case,+“,result=a+b,Case,-,result=a-b,Case,*,result=a*b,End Select,4.3 选择结构,如果x是偶数,则输出“偶数”,如果ageXageY,则salaryX=1500,如果text2内容为空,提示“输入

26、数据”,If,条件,Then,语句块,End If,4.3 选择结构2,If,条件,Then,语句块,1 当,条件,为真,执行这里,Else,语句块2,当,条件,为假,执行这里,End If,4.3 选择结构,salary=,If,条件,Then,语句块,1 当,条件,为真,执行这里,Else,语句块2,当,条件,为假,执行这里,End If,1000,1500,year3,year=playerF,playerM=playerF,playerM=playerF,Then,MsgBox 输了,5555,Else,MsgBox!我又赢了,ye ye,End If,End Sub,4.3 选择结构

27、3 分段函数,y =0,If,条件,1,Then,语句块,1,当,条件1,为真,执行,ElseIf,条件,2,Then,语句块,2,当,条件1,为假,,条件2,为真,Else,语句块,3,当,条件1,为假,,条件2,为假,End If,1,-1,x0,x0,y=1,y=-1,x=0,x=0,y=0,4.3 选择结构3,If,条件,1,Then,语句块,1,当,条件1,为真,执行,ElseIf,条件,2,Then,语句块,2,当,条件1,为假,,条件2,为真,执行,Else,语句块,3,当,条件1,为假,,条件2,为假,执行,End If,4.3 选择结构4,If,条件,1,Then,语句块,1

28、,当条件1成立,ElseIf,条件,2,Then,语句块,2,当条件1不成里,条件2成立,ElseIf,条件,n,Then,语句块,n,当前面n-1个条件不成立,条件n成立,Else,语句块,n+1,当前面n个条件都不成立,End If,4.3 选择结构4,score,变量保存,0,100,间的整数作为百分制成绩,,If,score 90,Then,当成绩,90,Print A,ElseIf,score 80,Then,当成绩,80,Print B,ElseIf,score 70,Then,当成绩,70,Print C,ElseIf,score 60,Then,当成绩,60,Print D,E

29、lse,Print E,当成绩,=60,End If,4.3 选择结构,使用什么格式的if语句?,If,条件,Then,.,End If,对1种情况进行处理,对2种情况处理,If,条件,Then,语句块,1,Else,语句块2,End If,对3种情况处理,If,条件,1,Then,语句块,1,ElseIf,条件,2,Then,语句块,2,Else,语句块,3,End If,对3种以上情况处理,If,条件,1,Then,语句块,1,ElseIf,条件,2,Then,语句块,2,ElseIf,条件,n,Then,语句块,n,Else,语句块,n+1,End If,4.3 选择结构 分段,如果x1

30、5,则a=15;,否则a=-15,0 x0,x+1 0,x1,y=2x 1,x2,x-1 2,x3,1 x,3,if x0 then,y=0,elseif x1 then,y=x+1,elseif x2 then,y=2*x,elseif x3 then,y=x-1,else,y=1,endif,4.3 选择结构4,Select Case,条件表达式,Case,表达式结果列表,1,语句块,1,Case,表达式结果列表,2,语句块,2,Case Else,可以省略,语句块,n+1,End Select,4.3 选择结构4,Select Case,opt ,根据运算符不同,进行运算不同,Case,

31、+,result=opt1+opt2,Case,-,result=opt1-opt2,Case,*,result=opt1*opt2,Case,/,result=opt1/opt2,End Select,4.5 循环结构程序设计,循环结构依据某一条件(即,循环条件,)反复执行某段程序(即,循环体,),执行循环体的次数,称为,循环次数,WhileWend,ForNext,不知道循环次数,宜用 while 循环,知道循环次数,宜用 For.Next 循环,4.5.1 WhileWend语句,While,循环条件,循环体,Wend,4.5.1 WhileWend语句,在窗体上打印输出4个“*”,i=

32、1,While,i=4,print “*”,i=i+1,Wend,1.,i=1,*,1.,i=,2,2.,i=2,*,*,2.,i=,3,3.,i=3,*,*,*,3.,i=,4,4.,i=4,*,*,*,*,4.,i=,5,5.,i=5,循环执行结束,4.5.1 WhileWend语句,程序功能是什么?执行结果是什么?,sum=0:i=1,While,i=3,sum=sum+i,i=i+1,Wend,Print sum,i,14所有整数的和,1.,sum=0 i=1,1.,sum=1,i=1,1.,sum=1,i=2,2.,sum=1 i=2,2.,sum=12,i=2,2.,sum=12,

33、i=3,3.,sum=1+2 i=3,3.,sum=1+2+3,i=3,3.,sum=1+2+3,i=4,4.,sum=1+2+3 i=4,6 4,4.5.1 WhileWend语句练习,求100之内所有偶数的和?,While,Wend,sum=0:i=2,i=100,sum=sum+i,i=i+2,4.5.1 WhileWend语句,cmdCompute,txtInput,txtOutput,在txtInput中,输入整数,单击cmdCompute,将1输入数据间,所有奇数的和计算出来,结果显示在,txtOutput中,4.5.1 WhileWend语句,Private Sub cmdCom

34、pute_Click(),Dim i As Integer,sum As Integer,Dim n As Integer,n=Val(txtInput.Text),sum=0:i=1,While,i=n,sum=sum+i,i=i+2,Wend,txtOutput.Text=sum,End Sub,4.5.1 WhileWend语句,单击命令按钮cmdCompute,计算,1/1,+,1/2,+,1/3,+,1/4,.直到最后一项=0.0001,sum=sum+1/i,i=i+1,lblResult.Caption=sum,4.5.1 WhileWend语句,求100!,Dim i As I

35、nteger,result As Double,result=,1,:i=1,While i=100,result=result*i,i=i+1,Wend,4.5.2 ForNext语句,For,循环变量=初值,To,终值,Step,步长,循环体,Next,循环变量,“Step 步长”省略时,表示步长为1,循环次数(终值初值),步长,1,sum=0,For,i=1,To,10,sum=sum+i,Next,i,4.5.2 ForNext语句,For,循环变量=初值,To,终值,Step,步长,循环体,Next,循环变量,sum=0,For,i=1,To,10,sum=sum+i,Next,i,

36、4.5.2 ForNext语句,求100之内偶数的总和,求100!,求1!+2!+100!,4.5.2 ForNext语句,求100之内偶数的总和,Dim I As Integer,Sum As Integer,Sum=0,For,I=2 To 100,Step,2,Sum=Sum+I,Next,I,4.5.2 ForNext语句,求100!,Dim I As Integer,S As,S=,For To,Next,I=1,100,S=S*I,I,1,Double,4.5.2 ForNext语句,求100!,Dim I As Integer,S As Double,S=1,For I=1 To

37、 100,S=S*I,Next I,求1!+2!+100!,Dim I As Integer,S As Double,Sum As Double,S=,Sum=,For I=1 To 100,Next I,1,0,S=S*I,Sum=Sum+S,4.5.2 ForNext语句,用循环结构编程,需要问几个问题,:,反复执行某个操作?,循环次数已知?,循环变量 初值 中值 步长?,循环体?能否使用循环变量?,4.5.2 For语句和While语句的对比,For-Next,循环,While-Wend循环,不知道循环次数,宜用 while 循环,知道循环次数,宜用 For.Next 循环,4.5.2

38、For语句和While语句的对比,输入5个学生成绩,计算平均分,循环体,5次:,输入成绩,score=Val(InputBox(输入成绩),累加,sum=sum+score,求平均分,avg=sum/5,用什么循环?,4.5.2 For语句和While语句的对比,Private Sub Form_Click(),Dim i As Integer,score As Integer,Dim sum As Single,Dim avg As Single,For,i=1,To,5,score=Val(,InputBox(输入成绩),),sum=sum+score,Next,i,avg=sum/5,E

39、nd Sub,4.5.2 For语句和While语句的对比,输入若干学生成绩,计算平均分,直到某次输入=0,:,累加,sum=sum+score,输入成绩,score=Val(InputBox(输入成绩),求平均分,avg=sum/5,4.5.2 For语句和While语句的对比,Private Sub Form_Click(),Dim i As Integer,score As Integer,Dim sum As Single,Dim avg As Single,score=Val(InputBox(输入成绩),While,score=0,sum=sum+score,score=Val(I

40、nputBox(输入成绩),Wend,avg=sum/5,End Sub,4.5.3 DoLoop语句,语法格式1:,Do,循环体,Loop While 循环条件,语法格式2:,Do While循环条件,循环体,Loop,4.5.3 DoLoop语句,语法格式1:,Do,循环体,Loop Until 循环结束条件,语法格式2:,Do Until循环结束条件,循环体,Loop,4.5.4 循环结构的嵌套,一个循环结构的循环体内出现了另一个循环结构,For i=1 To 2,For j=1 To 3,Print i=&i,j=&j,Next j,Next i,常见错误1,text2是不存在的对象,

41、在属性窗口中看(名称)属性,常见错误2,属性的引用方式不对,对象名.属性名,常见错误3,对象名正确,属性名或方法名不正确,常见错误4,程序运行没反映,事件过程是否正确,单击command1,代码编写在command2_Click()中,输出结果的语句是否正确,在text2中显示result变量值,text2.text=result,常见错误5,结果运行不正确:单击设置断点,F8单步执行,While score=0,score=Val(InputBox(,输入成绩,),sum=sum+score,i=i+1,Wend,avg=sum/i,score=0,score=90,sum=90,sum=9

42、0,score=90,score=-1,sum=90-1,第5章 数组,一维静态数组,一维动态数组,二维数组,控件数组,5.1.1 引例,Dim score1 As Integer,Dim score2 As Integer,Dim score25 As Integer,score1=Val(InputBox(输入第1号学生成绩),score2=Val(InputBox(输入第2号学生成绩),score25=Val(InputBox(输入第25号学生成绩),Dim i As Integer,For i=1 To 25,score(i)=Val(InputBox(输入第&i&号学生成绩),Nex

43、t i,Dim score(1 To 25)As Integer,5.1.2 一维,静态数组,用处:,批量处理数据,一次性定义多个变量,概念:,是一组具有相同名字、不同下标的,相同类型变量的集合,每个变量称为一个,数组元素,数组元素个数称为,数组长度,Dim score(,1,to,6,)As Integer,下界 to 上界,score(1),score(2),score(3),score(4),score(5),score(6),每个元素下标为1个,称为,一维数组,score在定义时就确定数组长度,称为,静态数组,5.1.2 一维,静态数组,Dim Num(10)As Integer,下标

44、默认从0开始,Num(0),、,Num(1),、,Num(2),、,Num(10),数组下标下界默认从,1,开始,“通用,|,声明”,Option Base 1,Dim Num(10)As Integer,Num(1),、,Num(2),、,Num(10),5.1.2 一维,静态数组(局部),Private Sub Form_Click(),Dim score(1 To 6)As Integer,score(1)=80,score(2)=70,score(3)=60,score(4)=40,score(5)=60,score(6)=90,print score(1),End Sub,数组定义在

45、事件过程内部,,在当前过程中有效,5.1.2 一维,静态数组(局部),数组与For循环结合使用,循环变量范围是数组下标范围,Private Sub Form_Click(),Dim score(1 To 6)As Integer,Dim i As Integer,For,i=1,To,6,score(i)=Val(InputBox(输入一个成绩),Next,i,End Sub,5.1.2 一维,静态数组(局部),Private Sub Form_Click(),Dim score(1 To 6)As Integer,Dim i As Integer,For,i=1,To,6,输入数据,scor

46、e(i)=,Val(InputBox(输入一个成绩),Next,i,For,i=1,To,6,输出数据,Print,score(i),Next,i,End Sub,5.1.2 一维,静态数组(全局),Dim score(1 To 6)As Integer,Private Sub cmdInput_Click(),Dim i As Integer,For,i=1,To,6 输入数据,score(i)=Val(InputBox(输入一个成绩),Next,i,End Sub,定义在“通用|声明”,,当前窗体中有效,5.1.2 一维,静态数组(全局),Private Sub cmdOutput_Cli

47、ck(),Dim i As Integer,For,i=1,To,6 输出数据,Print score(i),Next,i,End Sub,5.1.2 一维,静态数组,用数组求和:,1+2+3+,+100,Option Base 1 ,设置数组下界默认为,1,Private Sub Command1_Click(),Dim a(100)As Integer,s As Integer,For i=1 To 100,a(i)=i ,给数组赋初值,Next i,5.1.2 一维,静态数组,s=0 ,累加器清零,For i=1 To 100,s=s+a(i),Next i,Print 1+2+3+,+

48、100=;s,End Sub,5.1.3 二维数组,1二维静态数组的定义,二维静态数组的定义格式如下:,Dim 数组名(下界 To 上界,下界 To 上界)As 类型,2二维静态数组的使用,(1)单个数组元素的使用,每个数组元素两个下标,格式如下:,数组名(第一维下标,第二维下标),5.1.3 二维数组,(2)For循环在数组中的使用,Dim score(1 To 3,1 To 20)As Integer,Dim i As Integer 控制行的循环,Dim j As Integer 控制列的循环,For i=1 To 3 共3行,For j=1 To 20 共20列,score(i,j)=

49、Val(InputBox(输入数据),Next j,Next i,5.2 一维,动态数组,静态数组:,定义时数组长度已知,动态数组:,定义时数组长度未知,计算学生平均分,将学生成绩保存在数组中,用户先输入学生人数,再输入成绩,第一步:,Dim Score()As Integer,第二步:事件过程内部,n=Val(InputBox(“请输入总人数”),ReDim Score(n),5.2 一维,动态数组应用,输入学生的总人数和每个学生的成绩,然后根据输入的成绩计算所有学生成绩的平均值,Option Base 1,Private Sub Form_Load(),Dim Score()As Inte

50、ger,Dim n As Integer,Average As Single,Dim i As Integer,n=Val(InputBox(,请输入总人数,),ReDim Score(n),5.2 一维,动态数组应用,For i=1 To n,Score(i)=Val(InputBox(,请输入第,&Str(i)&,个学生的成绩,成绩统计,),Next i,Total=0,For i=1 To n,Total=Total+Score(i),Next i,5.2 一维,动态数组应用,Average=Total/n,Text1.Text=,Format(Average,0.00),End Sub

展开阅读全文
部分上传会员的收益排行 01、路***(¥15400+),02、曲****(¥15300+),
03、wei****016(¥13200+),04、大***流(¥12600+),
05、Fis****915(¥4200+),06、h****i(¥4100+),
07、Q**(¥3400+),08、自******点(¥2400+),
09、h*****x(¥1400+),10、c****e(¥1100+),
11、be*****ha(¥800+),12、13********8(¥800+)。
相似文档                                   自信AI助手自信AI助手
搜索标签

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服