算法与程序设计小结_第1页
算法与程序设计小结_第2页
算法与程序设计小结_第3页
算法与程序设计小结_第4页
算法与程序设计小结_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

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

文档简介

算法与程序设计小结第1页,共23页,2023年,2月20日,星期六第一章计算机解决问题的过程计算机解决问题的一般过程:分析问题设计算法编写程序调试运行程序第2页,共23页,2023年,2月20日,星期六算法算法是在有限步骤内求解某一问题所使用的一组定义明确的规则。通俗地说,算法是用计算机求解某一问题的方法,是可以被计算机机械地执行的一组动作,这些动作必须是有穷的,在有限步内可以完成。算法的特征:有穷性:一个算法的步骤定义是有限的,并且必须保证执行有限步之后结束。确定性:算法的每一步骤必须有确切的定义,无二义性。输入:一个算法有零个或多个输入。输出:一个算法有一个或多个输出。可行性:算法中有待执行的运算和操作是相当基本的,能够精确地运行的描述方式:自然语言、流程图、伪代码第3页,共23页,2023年,2月20日,星期六程序和程序语言程序实际上是一组操作指令或语句序列,是计算机执行算法的操作步骤。其核心是算法设计。程序设计语言的发展:机器语言、汇编语言、高级语言程序结构:顺序结构、选择结构(或称为分支结构、判断结构)、循环结构第4页,共23页,2023年,2月20日,星期六第二章程序设计基础可视化开发环境:工具箱、工程资源管理器、属性窗口的使用VB三种工作模式:设计模式、运行模式、中断模式对象:面向对象的程序设计中,把现实世界中具有各种特性的实体称为对象。窗体中使用最频繁的控件对象是标签(label)、文本框(TextBox)和命令按钮(CommandButton)。常用的属性:Name、BackColor、Font、Caption、Text、Height、Enable、Visible等方法:对象具有的功能和操作称为方法。事件和事件驱动机制:事件是用户与对象之间的交互动作。在VB中,系统预先定义好了一系列事件,如单击(Click)、双击(Dblclick)、装入(Load)等等。第5页,共23页,2023年,2月20日,星期六VB语言概述数据类型:在计算机程序设计中,数据是一个非常广义的概念,任何符号(如数字、英文字母、汉字或某些特殊符号)只要赋予它一定含义,就是数据。为了更好的处理各种数据,VB系统预先定义了多种基本数据类型,大致可分为三类:数值型、字符串型,以及不属于以上两类的其它类型,参见教材53页数据类型表。不同类型数据的运算特性是不同的。例如,数值型数据通常可以进行加减乘除四则运算,而字符串型数据通常进行串连接、子串查找等操作,不能进行四则运算。常量和变量:程序运行时,所有数据都需要存储在计算机的内存中。常量(Constant)是一个内存单元,在程序运行过程中其值不会改变。变量(Variable)是一个命名的内存单元,在程序运行过程中其值可以改变。命名规则参见教材54页学习指引。常量表示:格式:Const常量名[As数据类型]=表达式变量定义:格式:Dim变量名[As数据类型]在为一个变量选择数据类型时,必须考虑它的可能大小。不同的数据类型可以表示的数据范围是不同的。参见教材55页所列表格。第6页,共23页,2023年,2月20日,星期六VB语言概述数据类型:在计算机程序设计中,数据是一个非常广义的概念,任何符号(如数字、英文字母、汉字或某些特殊符号)只要赋予它一定含义,就是数据。为了更好的处理各种数据,VB系统预先定义了多种基本数据类型,大致可分为三类:数值型、字符串型,以及不属于以上两类的其它类型,参见教材53页数据类型表。不同类型数据的运算特性是不同的。例如,数值型数据通常可以进行加减乘除四则运算,而字符串型数据通常进行串连接、子串查找等操作,不能进行四则运算。常量和变量:程序运行时,所有数据都需要存储在计算机的内存中。常量(Constant)是一个内存单元,在程序运行过程中其值不会改变。变量(Variable)是一个命名的内存单元,在程序运行过程中其值可以改变。命名规则:必须以字母或下划线开头,由字母、数字或下划线组成,长度不超过255个字符,不能使用VB的关键字,不区分大小写。详见教材54页学习指引。常量表示:格式:Const常量名[As数据类型]=表达式变量定义:格式:Dim变量名[As数据类型]在为一个变量选择数据类型时,必须考虑它的可能大小。不同的数据类型可以表示的数据范围是不同的。参见教材53页所列表格。第7页,共23页,2023年,2月20日,星期六运算符:运算符是对数据进行加工处理的过程,描述各种不同运算的符号称为运算符(Operator)。算术运算符:常见的8种算术运算符参考教材56页学习指引中的运算符表。字符串运算符:字符串运算可以对字符串型数据进行串连操作,即将两个或多个字符串连接成一个字符串,主要有“&”和“+”两种。系统函数:系统函数又称为内部函数,是系统预先定义、由程序系统内部提供的一些程序段,存放在函数库中,共程序员直接通过函数名调用。调用格式为:函数名(参数值列表)VB提供的常用系统函数参见教材57页学习指引。考试中涉及到的函数还有:Fix(x)只取数值的整数部分、Int(x)取小于等于数值x的最大整数、Mid(s,n,m)从字符串s第n个位置开始取长度为m的字符串。表达式:表达式(Expression)是指由运算符及括号连接各种运算元素组成的有意义的式子。运算元素可以是常量、变量及函数。表达式有数值表达式、字符表达式等。第8页,共23页,2023年,2月20日,星期六赋值语句:赋值语句是程序设计语言中最基本的语句,它的作用是把某一值赋给某一变量。格式为:变量名=表达式例如:j=5i=ji=i+5t=jj=ii=t注意:如果数值变量没有赋值,其值为0;如果字符串变量没有赋值,其值为空串。赋值运算符两边的数据类型要一致,否则可能会发生“类型不匹配”的错误。输入语句:InputBox()是提供从键盘输入数据的系统函数。语法格式为:InputBox(提示信息,标题,默认值,位置)输出语句:Print方法。格式:print输出项1[;输出项2;……输出项n]如果用分号隔开,则后面输出项紧跟前一输出项,如果用逗号隔开,按照分区格式输出。MsgBox函数。MsgBox函数的作用是弹出一个对话框,以显示字符串。

例如:MsgBox"可兑换人民币"&rmb&"元"第9页,共23页,2023年,2月20日,星期六选择结构条件语句1语句2YN第10页,共23页,2023年,2月20日,星期六IF语句If条件then语句块Endif

说明:简单IF语句只包含一个分支,如果条件成立,则执行then下面的语句块;如果条件不成立,就什么也不执行。If条件then语句块1Else语句块2Endif说明:该语句只包含两个分支,如果条件成立,则执行then下面的语句块1;如果条件不成立,执行else分支后的语句块2简单IF语句IF/then/else语句If条件thenIf条件then语句块1Else语句块2EndifElseIf条件then

语句块3Else

语句块4EndifEndifIF语句嵌套第11页,共23页,2023年,2月20日,星期六控制条件VB支持的判断条件都是由关系运算符构成的关系表达式或由逻辑运算符构成的逻辑表达式.关系运算符关系运算符也称为比较运算,它用于对两个数据的值进行比较,比较的结果是一个逻辑值。用关系运算符连接的表达式称为关系表达式。如果表达式成立,其逻辑值为真(True),如果不成立,其逻辑值为假(False)。常用关系运算符见课本68页学习指引部分。逻辑运算符在实际问题中,对一些复杂的条件,需要用几个关系式组合起来表示,这种组合操作就是逻辑运算,又称为布尔运算。常用的逻辑运算符包括与(And)、或(Or)、非(Not)。对于And,只有两端连接的条件都成立,逻辑运算结果才为True;对于Or,只要两端连接的条件有一个成立,逻辑运算结果就为True;对于Not,则是取反操作,若原条件为True,则逻辑运算结果False,若原条件为False,则逻辑运算结果为True。控制条件表示逻辑运算符和关系运算符常在控制语句中用于表示条件。在一个表达式中可以出现多种类型的运算符,它们的优先顺序由高到低如下:算数运算字符串运算关系运算逻辑运算

第12页,共23页,2023年,2月20日,星期六Selectcase语句Selectcase表达式 case表达式范围1 语句块1 case表达式范围2 语句块2 …… case表达式范围n 语句块n[caseelse 语句块n+1Endselect表达式范围一个常量值,如1。用逗号分隔的值序列值的一段范围Is表达表,如is>45第13页,共23页,2023年,2月20日,星期六循环结构循环控制变量赋初值终止判断语句块改变循环控制变量的值是否第14页,共23页,2023年,2月20日,星期六For…next语句格式For循环控制变量=初值to终值[step步长]循环体语句块Next[循环控制变量]两个方面:一是重复要做的是什么事,二是如何控制循环。循环控制三要素循环控制变量的初值循环控制变量的终值在循环体中具有使循环控制变量由初值向终值变化的语句第15页,共23页,2023年,2月20日,星期六DO…LOOP语句DoWhile条件

语句块Loop形式1:Do

While/Until…Loopi=1s=1Dowhilei<=50s=s*ii=i+1Loop格式流程图代码举例p1语句块1是否DoUntil条件

语句块Loopi=1s=1Dountili>50s=s*ii=i+1Loopp2语句块2否是第16页,共23页,2023年,2月20日,星期六DO…LOOP语句Do

语句块LoopWhile条件形式2:Do

…LoopWhile/Untili=1s=1Dos=s*ii=i+1Loopwhilei<=50格式流程图代码举例p1语句块1是否Do

语句块LoopUntil条件i=1s=1Dos=s*ii=i+1Loopuntili>50p2语句块2否是第17页,共23页,2023年,2月20日,星期六DO…LOOP语句通过对Do…Loop语句以上几种形式的比较,我们总结如下:在以上两种形式的比较中,我们发现while和until的区别仅仅是循环条件相反,通过修改循环条件,它们之间可以互相转化,所以在实际应用中,我们习惯上经常使用Dowhile…Loop和Do…LoopUntil两种形式,即“当结构”和“直到结构”。使用“当结构”,即当满足循环条件才执行循环体;使用“直到结构”,即直到满足条件才退出循环,循环体至少执行一次,而“当结构”中,若不满足条件,可能循环体一次也不执行;使用Do…Loop语句需要注意循环体中一定要有修改循环控制条件的语句,否则一旦进入循环体就无法结束循环,陷入死循环。第18页,共23页,2023年,2月20日,星期六循环的嵌套和选择语句一样,循环结构也可以进行嵌套。例:编写程序打印下列图形。

*

**

***

****

*****

******编写代码:Fori=1to6'循环输出6行Forj=1toiprint"*";'每行输出i个“*”Nextjprint'换行Nexti

第19页,共23页,2023年,2月20日,星期六数组

(详见教材92页)数组是一组类型相同的数据的有序集合。它使用同一个名称来标识整个数组,每个分两元素称为数组元素,数组元素在数组中顺序排列。每一个数组元素都由一个唯一的顺序号(下标)来标识。数组的定义一维数组:Dim数组名(下标)[As数据类型]多维数组:Dim数组名(下标1[,下标2……])[As数据类型]数组的引用数组元素的引用是通过下标标识的。数组名加下标能唯一标识一个数组元素。第20页,共23页,2023年,2月20日,星期六自定义过程定义一个子过程,首先要确定子过程的名称和参数,然后在过程体中书写实现具体功能的程序语句。参数是调用一个过程时需要知道的数据。子过程定义好后,可以在任何一个函数或子程序中进行调用。调用子过程的一般格式:

Call子过程名(参数值列表)子过程是没有返回值的,通过Call命令调用。例如,上一节学习指引中有道打印图形的例题,我们采用循环嵌套来实现,现在也可以使用子过程来实现。SubDayin(iAsInteger)DimjAsIntegerForj=1ToiPrint"*";NextjPrintEndSubPrivateSubForm_Click()DimiAsIntegerFori=1To6CallDayin(i)NextiEndSub定义过程的一般格式:Sub子过程名([参数as类型[,参数as类型]…])

[实现功能的具体语句]

End

Sub第21页,共23页,2023年,2月20日,星期六自定义函数构造一个函数的思路与分析数学应用题有些类似,要知道已知什么、求什么。将已知条件放在参数中,在调用时通过参数传递得到,所求的

温馨提示

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

评论

0/150

提交评论