出版时间:2009-8 出版社:对外经济贸易大学出版社 作者:陈鹤年 主编 页数:301
前言
自20世纪70年代C语言产生至今,计算机界经历着深刻的变革,随着大型机、个人计算机处理能力的不断提高,C语言同时也在发生着变化。C语言原本只是为了编写UNIX操作系统,但是现在,它已经远远超出了这个初衷。c语言由于其功能强、使用灵活、可移植性好、目标程序质量高而受到广泛的欢迎。随着C语言的普及,1983年,美国国家标准化组织(the American National Standards Institute,ANSI)为此成立了一个专门的委员会,其宗旨是在保持C语言原有精髓的前提下,定义一种“无二意性的且与机器无关的C语言”,于是产生了针对C语言的ANSI标准,即ANSI C。该标准明确了原先C语言中模糊的概念,规范了标准的库函数、内存管理、字符串操作等内容。随后,在1990年,国际标准化组织(International Standardization Organization,ISO)接受ANSI C为国际标准C语言,即ISO C(ISO9899-1990)。正是由于上述的原因,我们选择C语言作为介绍程序设计的入门语言。 根据我近20年计算机教学工作的观察,市场上很多关于C语言程序设计的书籍,或是从抽象枯燥的语法开始,或是使用晦涩的数学问题作为实例,这在某种程度上偏离了程序设计的核心,不仅容易挫伤初学者学习程序设计的信心,而且也会造成初学者对程序设计缺乏兴趣。因此,需要一本初学者容易掌握的、描述程序设计概念和方法的书籍。经过多年的教学实践,笔者在总结C语言授课经验的基础上,借鉴过去用过的多本的C语言书籍的优点,根据讲稿整理并编写了这本《程序设计入门——C语言》。 作为一本入门教材,本书力求做到深入浅出、通俗易懂、易学易用。每个章节的结构层次清晰:首先提出本章节的重点、难点;其次给出学习之后应该达到的目标;第三是具体知识的解读,包括实例描述、编程风格以及编程经验等,而实例描述将从问题的提出、分析、数据结构描述、算法设计逐渐展开,直到给出完整的代码或主要代码;第四,对本章的知识进行总结;最后,提供练习和“实训”题目,每章后面的练习内容全面,形式多样,包含“问答题”、“选择题”、“判断题”、“分析程序输出结果题”、“编程题”和“实训题”等。通过这些练习,学生可以及时地检查和测试对本章内容学习和掌握的情况,教师也可以从中选出一些题目留为作业。 高质量的软件开发需要程序员具有较高的编程素质,这方面,国内计算机教育与实践相对薄弱,很多程序员虽然能熟练地掌握编程技术,但是缺乏强烈的软件工程与质量意识,具体表现是,在实践中不注重软件开发最基本的三个要素:编程风格、出错处理以及算法复杂度分析。而这些要素是一个程序员应具备的基本素质,是应该在早期学习中潜移默化地接受并在实践中运用的。通常的软件设计课程也往往忽视这部分教育,这也是本书所关心的内容之一。
内容概要
本书主要由四大模块组成。第一模块是“入门”部分,包括第1章,第2章,是程序设计学习的入门阶段,这部分将简单介绍个人计算机系统软、硬件环境,并通过简单的C语言程序讲述程序结构、语言集成编程环境,通过对简单操作界面的设计,学习如何设计友好的人机界面接口,初步了解程序设计的概念和培养学生上机操作、调试程序的能力,使学生对程序设计初步建立起整体认识。模块二“循序渐进”,是程序设计基础部分,包括第3章、第4章。学习各种数据类型以及结构化流程设计的典型应用。模块三“提高”,开始介绍相对复杂的数组类型、函数内容,培养模块化程序设计的思想,使学生初步了解软件工程概念,具备程序设计的基本能力;同时还讲解用指针和结构体类型进行数据处理的程序设计,学习文件结构设计,训练对外部存储器数据的访问并学习位操作的实际应用。通过学习,可以更好地培养学生综合分析问题、解决问题的能力。本模块包括第5章至第10章。模决四“综合应用”,提供5个综合性的实训练习题目,并附源代码,进行系统练习。另外,附录中也包括初学者在编程中常见的错误并给出相应的例子与分析等内容。
书籍目录
模块一 入门 第1章 计算机系统介绍 1.1 计算机硬件 1.2 计算机软件 1.3 算法 1.4 小结 1.5 习题与实训 第2章 C语言概述 2.1 C语言的发展史及特点 2.2 C语言的程序结构 2.3 C语言程序开发工具 2.4 小结 2.5 习题与实训模块二 循序渐进 第3章 基本数据类型 3.1 整型数据 3.2 实型数据 3.3 字符型数据 3.4 运算符和表达式 3.5 小结 3.6 习题与实训 第4章 程序控制语句 4.1 流程图和伪代码 4.2 结构化程序控制方法 4.3 顺序程序设计 4.4 选择控制程序设计 4.5 循环控制程序设计 4.6 小结 4.7 习题与实训 第5章 数组 5.1 一维数组 5.2 二维数组 5.3 字符数组 5.4 小结 5.5 习题与实训 第6章 函数 6.1 函数概述 6.2 函数的一般形式 6.3 函数的参数和返回值 6.4 函数的调用 6.5 函数的嵌套调用和递归调用 6.6 变量的作用域 6.7 变量的存储类别 6.8 内部静态函数和外部函数 6.9 函数应用举例 6.10 小结 6.11 习题与实训模块三 提高 第7章 指针 7.1 变量的地址和指针变量 7.2 数组的指针和指向数组的指针变量 7.3 字符串的指针和指向字符串的指针变量 7.4 字符串指针作为函数参数 7.5 指向函数的指针变量 7.6 返回指针值的函数 7.7 指针数组与指向指针的指针 7.8 指针运算举例 7.9 小结 7.10 习题与实训 第8章 结构体、联合体和枚举类型 8.1 结构体类型 8.2 结构体数组 8.3 结构体指针变量 8.4 联合体 8.5 枚举类型 8.6 用typedef定义类型 …… 第9章 位运算 第10章 文件模块四 综合应用附录参考文献
章节摘录
模块一 入门 第1章 计算机系统介绍 1.2 计算机软件 软件(Software)是一系列按照特定顺序组织的电脑数据和指令的集合。一般来讲软件被划分为系统软件、应用软件和介于这两者之间的中间件。其中系统软件为计算机使用,提供最基本的功能,但是并不针对某一特定应用领域。而应用软件则恰好相反,不同的应用软件根据用户和所服务的领域提供不同的功能。 软件并不只是包括可以在计算机上运行的电脑程序,与这些电脑程序相关的文档,一般也被认为是软件的一部分。简单的说,软件就是程序加文档的集合体。软件被应用于世界的各个领域,对人们的生活和工作都产生了深远的影响。 1.2.1 程序 计算机程序就是计算机执行的一个指令序列。它既可以只是几条执行某个简单任务的指令,也可能是要操作巨大数据量的复杂指令队列。许多计算机程序包含有百万计的指令,而其中很多指令可能被反复执行。在2005年,一台典型的个人计算机可以每秒执行大约30亿条指令。计算机通常并不会执行一些很复杂的指令来获得额外的机能,更多情况下是在按照程序员的编程要求来运行那些较简单但为数众多的短指令。 一般情况下,程序员们是不会直接用机器语言来为计算机写入指令的。那么做的结果只能是费时费力、效率低下而且漏洞百出。所以,程序员一般通过“高级”语言来写程序,然后再由某些特别的计算机程序,如解释器或编译器将之翻译成机器语言。一些编程语言看起来很接近机器语言,如汇编程序,被认为是低级语言。……
图书封面
评论、评分、阅读与下载