伪代码block转换成程序流程图_程序设计基础
1、程序与程序设计语⾔的基本知识
1)程序:为解决某⼀问题⽽采⽤程序设计语⾔编写的⼀个指令集合。
程序=算法(对操作的描述)+数据结构(对数据的描述)+程序设计语⾔+语⾔⼯具和环境。
2)程序的特点:⽬的性、有序性、分步性、有限性、操作性。
3)程序设计语⾔---按发展过程分类
(1)机器语⾔
由⼀连串的0和1⼆进制代码组成,能被计算机直接理解和执⾏的指令集合。
指令格式:
操作码操作数
(2)汇编语⾔
使⽤“助词符”来表⽰指令的操作码,使⽤存储单元或寄存器的名字表⽰地址码。
可读性好,易查错,⽅便修改,占存储空间少,执⾏速度快。
(3)⾼级语⾔
与机器指令系统⽆关,独⽴于机器的程序设计语⾔,所使⽤的符号接近⼈类的⾃然语⾔,表达形式接近于被描述的问题。
⾼级程序设计语⾔分类:
⾯向过程的语⾔:程序不仅要说明做什么,还要详细说明如何做,程序需要详细描述解题的过程和细节;⽬的在于⾼效的实现各种算法。
⾯向问题的语⾔:⼜称为⾮过程化语⾔或第四代语⾔,只需指出要计算机做什么、数据的输⼊和输出形式,就能得到所需结果;⽬的在于⾼效、直接地实现各种应⽤系统。
⾯向对象的语⾔:将客观事物看作具有属性和⾏为的对象,通过抽象出同⼀类对象的共同属性和⾏为,形成类,通过继承和多态重⽤。4)翻译程序(编译器)
(1)定义:其他编程语⾔必须经过⼀个翻译过程才能转换成机器语⾔,实现编译过程的⼯具是语⾔处理程序。
(2)汇编程序
定义:将汇编语⾔编制的程序(称源程序)翻译成机器语⾔程序(称⽬标程序)的⼯具。
翻译⼯作的步骤:
⽤机器操作码代替符号化的操作符。
⽤数值地址代替符号名称。
将常数翻译为机器的内部表⽰。
分配指令和数据的存储单元。
作⽤:
(3)翻译程序
定义:将⾼级语⾔编写的源程序翻译成⽬标程序的⼯具。
⼯作⽅式:
解释⽅式:解释程序
解释程序对源程序逐条地解释执⾏,不产⽣⽬标代码,程序执⾏时,解释程序和源程序⼀起参加运⾏。
解释⽅式执⾏速度较慢的原因:
每次运⾏需重新解释。
若程序较⼤,且错误发⽣在程序后⾯,则前⾯的运⾏是⽆效的。
解释程序只看到⼀句语句,⽆法对整个程序优化。
编译⽅式:编译程序
对整个源程序经过编译处理后,产⽣⼀个与源程序等价的⽬标程序。
编译过程的六个阶段:词法分析、语法分析、语义分析、中间代码⽣成、代码优化、⽬标代码⽣成。
5)程序设计语⾔的⽀持环境
操作系统是各种软件的核⼼和基础,是整个系统的控制管理中⼼,为其他软件提供运⾏环境。
6)程序设计语⾔的基本成分和语法
(1)程序的基本语法单位
定义:程序是由语句构成的,⽽语句⼜是由数据、表达式、函数等基本语法单位组成的,构成表达式
、函数等的最⼩单位是字符。字符集:
定义:字符是构成程序设计语⾔的最⼩语法单位,每⼀种程序设计语⾔都有⾃⼰的合法字符集。
基本字符集:数字:0-9
字符:a-z,A-Z
分隔符:,;
运算符:+,-,*,/
数据类型:
定义:数据就是描述客观事物的数字、字符、图⽚等,即所有能输⼊到计算机中并能被计算机处理的符号的集合。
分类:基本数据类型:程序设计语⾔系统内置的。
特点:其值不可再分解。整数类型、实数类型、字符类型、逻辑类型等。
构造数据类型:由基本数据类型按某种⽅式组合⽽成的。
数组类型、记录类型、枚举类型、集合类型、字符类型、⽂件等。
使⽤数据类型的⽬的:
决定该类型数据的取值形式、范围和在计算机中的存储和表⽰⽅式。
决定了该类型的数据所能执⾏的操作种类,即能够施加到不同类型数据上的运算是不同的。
表达式:
定义:表达式由变量、常量、函数调⽤和运算符组成。
常量和变量:数据存⼊内存→存放数据的内存单元命名→内存单元名来访问其中的数据
常量:在程序运⾏中数据不变的量。
变量:在程序运⾏中数据变化的量。
变量在使⽤前必须声明其类型和名称,编译程序根据其数据类型,在内存中分配相应的存储空间,以存储该变量的值。
运算符:
算术运算:加减乘除和乘⽅。
字符运算:连接、取⼦串
关系运算:⼤于、⼤于等于、⼩于、⼩于等于、等于、不等于
逻辑运算:与、或、⾮
内部函数:按功能分为数学函数、字符串函数、⽇期函数、转换函数。
赋值语句:表达式和赋值号构成了程序设计的⼀条赋值语句。
(2)数据的输⼊和输出
⼀类:程序之间以⽂件形式传送数据。
⼆类:⼈机交互,将⼈们可以识别的形式按⼀定格式输⼊到程序的变量中,输出则相反,按⽤户的要求格式将变量或常量的值显⽰或打印。(3)基本控制结构
顺序结构:指程序的执⾏按照语句出现的先后顺序⼀次执⾏。
选择结构:根据条件判断,决定程序的执⾏顺序。
循环结构:指重复执⾏某个操作。
(4)过程:指重复处理的程序段或者分解的⼦功能编写成⼀个逻辑上独⽴的过程,当程序需要该过程时进⾏调⽤。
2、算法的基本知识
1)算法的描述:程序---计算机语⾔表述的算法。
流程图---图形化的算法。
2)计算机的算法
(1)数值计算算法
⽬的:求数值解。
特点:少量输⼊、输出,复杂的运算。
(2)⾮数值计算算法
⽬的:对数据的处理。
特点:⼤量输⼊、输出,简单的运算。
3)算法的定义:是解决问题⽅法的精确描述,但算法并不给出问题的精确解,只是说明怎样才能得到解。
4)算法的性质:有穷性、确定性、有效性、零个或多个输⼊、⼀个或多个输出
5)算法=数据对象的运算和操作(算数运算、逻辑运算、关系运算、数据运算)+控制结构(顺序结构、选择结构、循环结构)。6)描述算法的⽅法
(1)⾃然语⾔
优点:通俗易懂
缺点:易产⽣歧义,往往根据上下⽂才能判断其含义,不严格;语句繁琐、冗长,很难清楚地表达算法的逻辑流程。
(2)流程图法
定义:⽤图框、线条、⽂字说明,形象直观的描述算法。
流程图符号:
---起⽌框:表⽰流程的开始或结束。
---输⼊输出框:表⽰输⼊数据或输出结果。
---判断框:根据条件判断,决定算法的继续执⾏的⾛向。
---处理框:表⽰基本功能的处理的描述。
---流程线:表⽰流程的路径和⽅向。
---连接点:表⽰流程中“向”和“来⾃”其他地点的输出或输⼊。
(3)N-S流程图法:全部算法以⼀个⼤的矩形框表⽰,内包含⼀些从属于它的⼩矩形框。
顺序语句:
选择语句:
循环语句:
(4)伪代码法:简称伪码,伪代码是介于⾃然语⾔和计算机语⾔之间的⽂字和符号来描述算法。
7)算法评价
(1)正确性:设计和评价算法的⾸要条件。
(2)算法的时间特性:指依据算法编制成程序后在计算机中运作所耗费时间的长短。
算法的时间复杂度:把程序中语句重复执⾏次数之和作为程序运⾏时的时间特性。
(3)算法的空间特性:指依据算法编制成程序后在计算机中运⾏所占⽤空间的⼤⼩。
算法的空间复杂度:在计算机上运⾏所占⽤的空间同样也是问题规模n的⼀个函数。
(4)算法的易理解性。
3、程序设计的过程。
1)程序设计步骤
2)测试的前提:程序通过编译,没有语法和连接上的错误。
3)测试⽤例:为了发现程序中的错误⽽设计的测试数据。
4)⿊盒测试:⼜称功能测试或数据驱动测试,不考虑程序的内部结构和处理过程,只对程序的接⼝进⾏测试,检查程序是否能适当地接受输⼊数据并产⽣正确的输出信息。
⿊盒测试技术有事务处理流程测试、等价类划分、边界值分析。
5)⽩盒测试:⼜称结构测试或逻辑驱动测试,检验程序内部的逻辑来测试,检查程序中每条通路是否正确⼯作。
百合测试有路径测试、语句测试、分⽀测试、条件组合测试。
4、程序设计思路
流程图转换为ns图1)三种基本程序结构
(1)顺序结构:
特点:只有⼀个⼊⼝点和⼀个出⼝点。
组成:说明语句、赋值语句、输⼊输出语句、⼦函数调⽤语句、返回语句。
(2)选择结构:
特点:程序的处理步骤出现分⽀,根据某⼀特定的条件选择其中的⼀个分⽀执⾏。
形式:单选泽、双选择、多选择。
(3)循环结构
当型循环:先判断后执⾏。
直到型循环:先执⾏后判断。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论