程序主要包括的信息:
1.对数据的描述。——数据结构
2.对操作的描述。——算法
沃思:算法加数据结构等于程序
还应当采用结构化程序设计方法设计程序,用某一种计算机语言进行表示。
2.1什么是算法
广义地说,为解决一个问题而采取的方法和步骤,就可以称为“算法”
不仅要保证算法的正确,还要考虑算法的质量,选择合适的算法。
计算计算法:数值运算算法、非数值运算算法。前者的目的是求数值解,后者应用广泛,最常见的是用于事务管理领域,例如对一批职工按姓名排序、图书检索、人事管理和行车调度管理等。
现在有很多成熟的数值运算算法,人们常常把这些算法汇编成册,或存放在磁盘或光盘上供调用。非数值运算算法则只有典型的,例如排序算法,查找搜索算法等,大多需要具体问题具体分析。
2.2简单的算法举例
阶乘——循环
输出不及格学生的学号和成绩——循环
判断闰年——多次判断
1-1/2+1/3…-1/100——循环
给出一个大于等于三的正整数,判断它是不是一个素数。——循环
2.3算法的特性
有穷
确定
有零个或多个输入—非数值运算算法
有一个或多个输入—数值运算算法
有效性
2.4怎样表示一个算法
自然语言
流程图
三种基本结构
顺序结构
选择结构
循环结构 当型(While型)直到型(Until型)
这三种基本结构的共同特点
只有一个入口
只有一个出口
结构内每一部分都有机会被执行到
不存在死循环
N-S流程图
伪代码
计算机语言
2.5结构化程序设计方法
基本思路:把一个复杂问题的求解过程分阶段进行,每个阶段处理的问题都控制在人们容易理解和处理的范围内
具体地说采用以下方法来保证得到结构化的程序:
自顶向下
逐步细化
模块化设计
结构化编码
重点:
0.算法+数据结构=程序 (算法——程序的灵魂)
1.算法:为解决一个问题而采取的方法步骤。—解决方案。
2.三种基本结构,尤其是循环结构和选择结构。
3.掌握一种表示算法的方法。
4.结构化程序设计方法 (可能很久以后才需要吧~)。