读书人

程序设计方法

发布时间: 2010-03-15 06:04:50 作者:

 程序设计方法


基本信息出版社:高等教育出版社
页码:241 页
出版日期:2001年01月
ISBN:7040101807
条形码:9787040101805
版本:第1版
装帧:平装
开本:16
正文语种:中文
丛书名:中学教师进修高等师范本科<专科起点>教材

内容简介 《程序设计方法》是教育部师范教育司组编的中学教师进修高等师范本科(专科起点)“程序设计方法”课程教材。《程序设计方法》的主要内容包括程序设计方法概论、C语言基本要素、C中的控制结构、结构化程序设计方法、C语言中的组合数据类型、基于功能抽象的程序设计方法、抽象数据类型、基于分划和递推的程序设计方法、面向对象程序设计等。《程序设计方法》主要以方法为主导,结合C语言,把程序设计方法学研究中若干成熟的理论和方法用通俗易懂的语言描述出来。《程序设计方法》还选取趣味性强、技巧性高、能够启发学生创造性思维的例题,以适应指导中学生参加各类程序设计比赛的需要。
《程序设计方法》主要面向进修高等师范本科(专科起点)的中学教师,也可作为普通高等师范院校计算机专业和非计算机专业学生的教材或教学参考书。
编辑推荐 《程序设计方法》是由高等教育出版社出版的。
目录
第1章 程序设计方法概论
1.1 程序设计语言和程序设计方法
1.1.1 程序、语言和程序设计方法
1.1.2 语言作为程序设计工具
1.1.3 程序设计方法的作用
1.2 程序设计方法的形成和发展
1.2.1 程序设计技巧阶段
1.2.2 程序设计从技巧上升为科学
1.2.3 几种实用的程序设计方法
习题

第2章 C语言基本要素
2.1 C语言概述
2.1.1 C语言的特点
2.1.2 C语言的程序结构
2.2 词汇和语法规则
2.2.1 标识符
2.2.2 保留字
2.3 基本数据类型变量和常量
2.3.1 C语言的数据类型
2.3.2 基本数据类型
2.3.3 常量和变量说明
2.4 运算符和表达式
2.4.1 C语言运算符简介
2.4.2 算术运算符和算术表达式
2.4.3 赋值运算符和赋值表达式
2.4.4 逗号运算符和逗号表达式
2.5 基本语句
2.5.1 赋值语句
2.5.2 输入语句
2.5.3 输出语句
2.6 C语言编程环境简介
习题二

第3章 C语言中的控制结构
3.1 顺序结构
3.2 选择结构
3.2.1 关系运算符和关系表达式
3.2.2 逻辑运算符与逻辑表达式
3.2.3 单分支选择结构
3.2.4 双分支选择结构
3.2.5 多分支选择结构
3.3 重复结构
33.1 while语句
3.3.2 do-while语句
3.3.3 for语句
习题三

第4章 结构化程序设计方法
4.1 结构化程序设计的由来和发展
4.2 结构化程序
4.2.1 结构化程序的组成
4.2.2 结构化程序的优点
4.3 程序正确性概述
4.3.1 软件测试
4.3.2 程序正确性理论
4.4 结构化程序设计方法
和实例
4.4.1 结构化程序设计方法概述
4.4.2 c语言中的结构化机制
4.4.3 结构化程序设计实例
习题四

第5章 c语言中的组合数据类型
5.1 数组类型
5.1.1 一维数组
5.1.2 字符串
5.1.3 多维数组
5.2 结构体类型
5.2.1 结构体类型的概念
5.2.2 结构体类型的变量
5.2.3 结构体类型数组
5.3 指针类型
5.3.1 指针的概念
5.3.2 指针变量的定义
5.3.3 指针的使用
习题五

第6章 基于功能抽象的程序设计方法
6.1 功能抽象概念和作用
6.2 C语言中的功能抽象机制——函数
6.2.1 函数定义和函数类型
6.2.2 函数调用和参数传递
6.2.3 函数的嵌套调用
6.2.4 递归函数设计方法(一)
6.3 自顶向下逐步求精的程序设计方法
6.3.1 方法概述
6.3.2 程序设计实例
6.4 自底向上的程序设计方法
6.4.1 程序重用和自底向上程序设计
6.4.2 程序设计实例
习题六

第7章 抽象数据类型
7.1 数据类型概念的产生和演变
7.1.1 数据类型
7.1.2 数据结构
7.1.3 抽象数据类型
7.2 基于ADT的简单数据结构
7.2.1 线性表及其实现
7.2.2 堆栈及其实现
7.2.3 队列及其实现
7.2.4 集合及其实现
习题七

第8章 基于分划和递推的程序设计方法
8.1 程序设计和算法设计
8.1.1 程序和算法的关系
8.1.2 算法的表示方法
8.1.3 常见算法设计方法概述
8.2 一种简单实用的程序设计方法
8.2.1 引言
8.2.2 新方法的主要思想和技术
8.2.3 算法设计语言Radl简介
8.2.4 循环程序核心思想描述技术
8.2.5 由算法到c程序的转换
8.2 6基于分划和递推的程序设计
8.2.7 递归函数设计方法(二)
8.3 用新方法设计C语言程序实例
8.3.1 计算n近似值
8.3.2 冒泡排序和选择排序
8.3.3 斐波那契数列
8.4 小结
习题八

第9章 面向对象程序设计
9.1 为什么要学习面向对象程序设计
9.1.1 为什么要学习面向对象程序设计
91.2 如何学习面向对象程序设计
92面向对象程序设计
9.2.1 面向对象思想的产生
9.2.2 面向对象程序设计及语言
9.2.3 面向对象方法在软件开发中的应用
9.2.4 面向对象程序设计范型
9.3 面向对象的基本概念
9.3.1 对象、消息和类
9.3.2 类的定义及其对象
9.3.3 友元
9.3.4 重载
9.4 面向对象的特性及c++实现
9.4.1 封装、继承和多态性
9.4.2 继承和类的派生
9.4.3 多态性和虚函数
9.5 面向对象程序设计实例分析
习题九
参考文献
……
序言 当前常见的高级语言程序设计教程以介绍程序设计语言为中心,很少介绍程序设计方法,致使书中只有程序,没有程序设计过程,教师和学生都难以说清楚程序是如何得来的,不能很好地起到培养学生程序设计能力的作用。事实上,科学的程序设计方法至关重要,是各级各类程序设计人员必须掌握的知识和技能。许多有识之士已注意到这一问题。教育部颁发的《中小学信息技术课程指导纲要》已将“程序设计方法”作为全国高中学生信息技术基础课程的重要内容。但目前国内系统介绍程序设计方法的教材还不多见,能够见到的只是程序设计方法学教程。这是计算机专业高年级学生和硕士研究生专业课的教材。这类教程介绍了多种程序设计方法,但其中有些内容涉及严格的数学推演,难以被非计算机专业的学生和进修高等师范本科(专科起点)的中学教师理解和掌握。为此,急需一本系统地反映国内外成熟的程序设计方法的通俗易懂的新教材。编著出版本书的目的正是为了满足这一需要。我们长期从事程序设计方法的研究和教学,试图将这一领域实用的理论、方法和最新研究成果,经过化繁就简,化难为易,体现在教材中。
本教材根据教育部师范教育司中学教师进修高等师范本科(专科起点)教学计划中“确保高等师范本科的教育水平,科学地处理专科知识与本科知识的衔接关系,避免知识重复”的要求组织内容。教材以C语言为程序设计的主要语言,假定读者已初步掌握c语言及其程序设计的基本知识,着重介绍c程序中的数据类型、数据结构的设计、程序流程和控制等高级语言机制。现代程序设计理论认为,语言是方法的具体实现。本书主要以方法为主导,结合C语言,系统地阐述结构化程序设计、模块化程序设计、抽象数据类型、功能抽象和数据抽象等成熟的程序设计概念和方法,并吸收当前国外同类教材的经验,把程序设计方法学研究中若干成熟的理论和方法(如程序规约、循环不变式等)用通俗易懂的语言描述出来,使之成为一般程序员也能理解和掌握的实用程序设计技术。算法设计是程序设计的核心、关键和难点。在介绍程序设计方法时突出介绍算法的地位和算法设计的方法。
文摘 插图:


从应用的角度来看,语言又是程序设计方法的体现,不同类型的语言体现了不同程序设计方法的设计思想。例如,Pascal语言所编写的程序,南一系统过程组成,体现了结构化程序设计方法的自顶向下、逐步求精、模块化的思想,而ADA所提供的程序包可将数据和对数据的操作封装在一起,这正体现了基于对象程序设计中数据抽象和数据封装的思想。
程序设计语言与程序设计方法之间这种密切的关系,对于程序设计的学习具有指导意义。学习任一种新型程序设计语言的重点是理解该语言所体现的方法,掌握方法所体现的原理和思想精髓,才能增强写出高效程序的能力。语言的语法和语义的学习是第二位的。这样才能培养和提高程序设计的能力,而不至于陷入只懂得机械背诵语言的语法和语义,却不会编制程序的怪圈。
1.1.2 语言作为程序设计工具
产生程序的全部技术活动序列称为程序设计,它主要包括需求分析、算法设计、用某种计算机语言实现算法、程序正确性验证和测试等步骤。用计算机语言实现算法是程序设计过程中不可缺少的环节,语言在此充当着描述工具的角色,它将解决某项任务所用的算法以计算机能够接受的形式表达出来,便于计算机处理。
学习作为工具的语言并不是学习程序设计的主要目的。程序设计的着重点和技术关键是算法设计。这是一项极富挑战的创造性劳动,是程序设计能力的重要标志。用高级语言编码是第二位的,是一项非创造性劳动,可以由计算机机械完成。
1.1.3 程序设计方法的作用
在正式学习本书之前,了解一下程序设计方法的作用是十分必要的。它能让我们明确学习程序设计方法的意义及今后学习所要达到的目标。
首先,从哲学的角度来看,任何实践活动都需要理论的指导,否则将是盲目的实践。程序设计作为人类在计算机领域的实践活动自然也不例外。Brooks曾生动地描述在程序设计方法学产生前程序员编制和调试程序所处的困境:“像巨兽在泥潭中作垂死挣扎,挣扎得愈猛,泥浆就沾得越多,最后没有一个野兽逃脱淹没在泥潭中的命运……程序设计就像是这样一个泥潭……一批批程序员在泥潭中挣扎……”。但是初学者千万不要被刚才的话语所吓倒,不要失去学习程序设计的信心和勇气。
读书人网 >软件工程

热点推荐