C语言简明教程

C语言简明教程"

作者:张璇、张研研
ISBN:9787302202646
定价:¥26
字数:千字
页数:
出版时间:2009.07.01
开本:
版次:1-1
装帧:
出版社:清华大学出版社
简介

本书是为大学本科计算机软件、计算机应用及相关专业学生学习C语言程序设计课程编写的教材。本书选材精练,对C语言最基本、最常用的知识点进行讲解,包括顺序结构、选择结构、循环结构、数组、函数、指针、结构(体)、文件等共8章内容,其他次要内容只在附录中简单介绍。本书以程序设计为主线,以编程思想、编程方法和编程技巧为重点,着重培养学生的编程能力。丰富的例题、练习题也是本书的一个特点。

本书可作为大学专科及高职相关专业的教材,也可供大学理工类本科生和研究生学习C语言之用,也是软件开发人员案头理想的参考资料。

前言

写本书的目的

中国是地域大国、人口大国、资源大国,并逐渐成为经济大国,但中国要成为软件大国并保持长盛不衰,还任重而道远。为此,培养高素质的软件人才是计算机教育工作者责无旁贷的任务。培养人才是多因素的,教材无疑是重要因素之一。

目前已出版的C语言教材有上百种之多,它们各具特色,为培养软件人才立下了汗马功劳。但随着技术的发展,对C语言的要求也在变化。在培养软件人才的过程中,如何使学生在较短的时间内尽快掌握C语言基础知识,并具有一定的编程能力,还需要高质量的教材。

作者根据多年从事计算机基础教育和讲授多种程序设计语言的经验,特别是近几年讲授C语言的教学经验,尝试着编写适应上述要求的C语言教材。

本书称为“简明教程”,就是因为在内容上作了大胆的取舍,保留了程序设计语言最基本的顺序结构、选择结构、循环结构、数组、函数、指针、结构(体)和文件等内容,把不常用的语法现象,如枚举类型、联合(共用体)、有参宏、条件编译、位运算、二维数组的指针及主函数的参数等内容放在附录中,只作简单介绍。对于顺序结构、选择结构、循环结构等内容,本书比其他同类教材作了适当的增加。

全书内容以讲授程序设计为主,对涉及的语法现象作适当介绍,只要学生明白、会用即可,不作过细的讲解,在各章末的语法小结中再进一步说明。对于每个例题,先作分析(算法设计),然后给出程序,再说明程序中主要语句的作用,比如程序为什么这样编,还有哪些编法,还有哪些变化,哪种编法最好等。

书中所选例题尽量涵盖各类常见问题,例题程序中尽量覆盖常见语法现象、编程技术和技巧。练习题的安排有层次,既有简单模仿,又有适度变化,也有一些有难度的题目。

总之,本书内容既精练又丰富。通过本书的学习,学生能够掌握编写中小程序的必备知识并具备一定的编程能力,为进一步学习其他课程,如数据结构、操作系统、C++、Java和C#等打下坚实的基础。

本书的特点

目前出版的C语言教材大多以“语法”为主线,语法讲得系统、细致、全面,而在培养学生编程能力的方面有些不足。这些书中的例题相对较少,分析、说明不够充分,练习题和习题较少且涉及面偏窄,缺少中低难度的题目。

本书以“编程”作为主线,例题多,一题多编。书中说明采用不同编程方法的原因,分析每种编法的优缺点,特别是从讲述顺序结构开始,就为学生准备大量的例题和练习题。这些题目由浅入深,用以训练学生程序设计的基本技能和技巧。各章还配有适当的习题。

“以编程为主线,以培养编程能力为主要目标”是本书的一大特色; 在保证“够用”的前提下精选素材,可以用56~64学时完成本课程的教学任务是本书的又一特色(专科可适当增加课时); 不集中讲解语法,而是把语法知识融于例题中讲解,既有利于学生理解、记忆,又节省学时,达到较高的“效果学时比”,这是本书的第三个特色; 丰富的例题、练习题有层次,便于学生由浅入深地培养编程能力,这是本书的第四个特色; 讲解透彻,语言通俗,易于理解和自学是本书的第五个特色。

为便于读者使用本教材,作者同时编写了配套辅助教材《C语言简明教程习题解答与上机指导》,对于本书中的练习题、章末习题全部给出答案,并对Turbo C 2.0、WINTC和VC++6.0三种运行环境的使用作了详细介绍。

本书中的例题全部在WINTC环境调试、运行过。运行时需要输入的数据(或无须输入)以及输出的结果,在例题下面都作了说明。

作者希望本书对从事计算机程序设计语言教学工作的老师有所裨益,希望本书对于学习C语言程序设计的学生来说是一本入门的好书,对从事软件开发的人员具有参考价值。

由于作者水平所限,错误和不足之处在所难免,敬请读者批评指正。

编者2008年8月于北京

目录

绪论

第1章顺序结构程序设计

1.1显示信息

1.1.1初识C语言程序

1.1.2C语言程序的结构

1.2整数算术运算

1.2.1整数的加法、减法和乘法

1.2.2整数的除法

1.2.3整数的求余运算

1.2.4溢出

1.2.5运算符的优先级和结合性

1.3实数的算术运算

1.3.1实数的四则运算

1.3.2乘方、开方与取对数

1.4字符类型

1.4.1字符常量

1.4.2字符变量

1.4.3字符数据的存储方式

1.4.4字符数据与整数通用

1.5表达式

1.5.1算术表达式

1.5.2多种类型数据的混合运算

1.6赋值运算

1.6.1赋值运算符

1.6.2赋值表达式

1.6.3赋值语句

1.7顺序结构程序设计

1.7.1顺序结构的流程框图

1.7.2顺序结构综合应用

1.8语法小结

1.8.1标识符

1.8.2二进制数、八进制数与十六进制数

1.8.3数据类型

1.8.4常量与变量

1.8.5运算符与优先级

1.8.6语句

1.8.7输入/输出格式

习题1

第2章选择结构程序设计

2.1两路分支与关系运算

2.1.1问题的引入

2.1.2关系运算符与关系表达式

2.1.3两路分支控制语句的标准格式

2.1.4空语句与短式if语句

2.1.5if语句的应用

2.2复杂条件与逻辑运算

2.2.1数值表示逻辑值

2.2.2复杂条件

2.2.3逻辑运算符与逻辑表达式

2.2.4逻辑运算符的优先级

2.3if嵌套与多路分支

2.3.1if嵌套结构

2.3.2两层嵌套处理三路分支

2.3.3四路及多路分支

2.3.4用if嵌套分解复杂条件

2.3.5关于else与if匹配

2.4switch语句

2.4.1switch语句的标准格式

2.4.2switch语句的应用

2.5条件运算

2.6选择结构程序设计

2.6.1选择结构只是程序的一部分

2.6.2选择结构的几种情况

2.6.3选择结构综合练习

2.7语法小结

2.7.1运算符

2.7.2语句

2.7.3等价ifelse语句与等价条件

2.7.4分解两路分支

习题2

第3章循环结构程序设计

3.1循环结构的3种语句

3.1.1while语句

3.1.2dowhile语句

3.1.3for语句

3.2用循环结构处理的几类问题

3.2.1累加问题

3.2.2累乘问题

3.2.3统计问题

3.2.4求最大值和最小值

3.2.5遍历问题

3.2.6无穷级数求和问题

3.2.7迭代问题

3.3多重循环

3.3.1二重循环

3.3.2三重循环

3.4循环结构程序设计

3.5语法小结

习题3

第4章数组

4.1一维数组

4.1.1一维数组的定义

4.1.2一维数组的使用

4.1.3一维数组的初始化

4.1.4一维数组的应用

4.2二维数组

4.2.1二维数组的定义

4.2.2二维数组的使用

4.2.3二维数组的存储方式

4.2.4二维数组的初始化

4.2.5二维数组的应用

4.2.6高维数组

4.3字符数组

4.3.1字符串

4.3.2字符数组的定义

4.3.3字符数组的初始化

4.3.4字符数组的输入/输出

4.3.5处理字符串的库函数

4.4语法小结

习题4

第5章函数

5.1函数的相关概念

5.1.1子程序与主程序

5.1.2C语言中函数的作用

5.1.3函数的例子

5.1.4函数的分类

5.1.5函数的定义

5.1.6函数的调用

5.2自定义函数的编写

5.2.1从主函数中分离函数

5.2.2新编函数

5.3递归

5.3.1递归定义与递归公式

5.3.2递归函数与递归调用

5.3.3递归函数的应用

5.3.4递归的优缺点

5.4函数的两种参数

5.4.1变量作函数的形参

5.4.2数组作函数的形参

5.5使用专家编写的函数

5.5.1解线性代数方程组

5.5.2求行列式的值

5.5.3求非奇异方阵的逆矩阵

5.5.4使用包含文件

5.6语法小结

5.6.1关于return语句

5.6.2大型源程序的组织

5.6.3函数的声明

5.6.4局部变量与全局变量

5.6.5变量的存储类型

5.6.6修饰符extern与static对全局变量和函数的修饰作用

5.6.7程序员的函数库

习题5

第6章指针

6.1内存管理

6.2指针常量与指针变量

6.2.1指针变量的定义

6.2.2指针变量的简单应用

6.3用指针处理数组

6.3.1数组的指针与数组元素的指针

6.3.2用指针表示数组元素

6.3.3用指针处理数组元素

6.3.4指针变量指向数组

6.3.5用指向数组的指针变量处理数组

6.3.6指针变量作函数的形参

6.4用指针处理字符串

6.4.1字符指针代替字符数组名

6.4.2字符指针处理字符串的优势

6.4.3字符指针数组处理多个字符串

6.5用指针调用函数

6.6语法小结

习题6

第7章结构

7.1结构类型

7.1.1结构类型的定义

7.1.2结构类型变量的定义

7.1.3结构类型变量的使用

7.1.4结构数组

7.1.5指向结构类型数据的指针

7.2链表简介

7.2.1两种重要的存储结构

7.2.2链表的结点

7.2.3建立一个简单的链表

7.3用指针处理链表

7.3.1分配结点空间

7.3.2建立链表的函数

7.3.3输出链表的函数

7.3.4删除结点的函数

7.3.5插入结点的函数

7.3.6调用上述函数的主函数

7.4语法小结

7.4.1关于结构类型

7.4.2几个运算符

习题7

第8章文件

8.1文件的打开与关闭

8.1.1打开文件

8.1.2关闭文件

8.2对文件的操作

8.2.1字符的读/写函数

8.2.2格式读/写函数

8.2.3读/写数据块函数

习题8

附录A语法补遗

A.1数据类型

A.2位运算

A.3编译预处理

A.4其他

附录B关键字

附录C运算符的优先级与结合性

附录D常用库函数

附录EASCII表

参考文献

作者简介

编辑推荐

作者寄语

电子资料

www.luweidong.cn

下一个