C语言程序设计教程 第4版
作者 : 朱鸣华 罗晓芳 董明 孟军 汪德刚 编著
出版日期 : 2019-08-12
ISBN : 978-7-111-63415-7
定价 : 59.00元
教辅资源下载
扩展信息
语种 : 简体中文
页数 : 287
开本 : 16
原书名 :
原出版社:
属性分类: 教材
包含CD : 无CD
绝版 :
图书简介

本书介绍利用C语言进行程序设计的基本知识。全书共12章,详细介绍了C语言的基本概念、算法与程序设计基础、数据的输入和输出、选择结构、循环结构、数组、函数、指针、结构体与共用体、文件、面向对象程序设计与C++基础等内容。每章配有大量的习题,便于读者巩固所学知识,掌握程序设计的基本方法和编程技巧。
  本书力求概念叙述准确、严谨,语言通俗易懂,适合作为高等院校理工科非计算机专业的“C语言程序设计”课程教材,也可供工程技术人员参考。

图书特色

图书前言

《C语言程序设计教程》自2007年2月出版发行第1版以来,被多所学校程序设计课程选用,是学习C语言程序设计的理想教材。
为了适应计算机科学技术的发展,更好地满足人工智能、互联网+形势下高校计算机教学的需求,本教材进行了第4版修订。第4版共分11章,在原教材的基础上进行了语言平台的升级及内容的修订,主要调整如下:
1)程序设计语言平台升级为Visual C++ 2010,书中实例均在Visual C++ 2010环境下调试通过,并在《C语言程序设计习题解析与上机指导 第3版》中对Visual C++ 2010环境进行了详细的介绍,方便学生自主学习。
2)对各章节的文字叙述进行了完善和修改。
3)增加了部分章节中的课后习题,以及趣味程序设计实例,以激发学生的学习兴趣。
4)每章都配有精心设计的例题和习题,并配有实验指导教材。
5)为满足学时的安排和教学需要,重新调整了章节的组合,删除了第2章“算法与程序设计基础”和第12章“面向对象程序设计与C++基础”。
第4版秉承原来版本内容全面、衔接有序、通俗易懂、习题丰富以及实践性强的特点,符合社会发展的需要,便于高校程序设计课程的教学安排,以及结合与之配套的国家精品在线开放课程开展线上线下混合式教学实践。
本书第1~3和5章由罗晓芳编写,第4、7和8章由朱鸣华、汪德刚编写,第6和11章由董明编写,第9和10章由孟军编写,全书由朱鸣华、罗晓芳统稿。
第4版的修订是在第3版的基础上进行的,感谢参与第3版编写工作的刘旭麟、李慧、杨微、孙大为、赵晶。在本书的编写过程中还得到了大连理工大学程序设计基础课程教学团队各位老师的大力支持和帮助,在此表示诚挚的谢意。由于编者水平有限,书中难免存在疏漏和谬误之处,敬请广大读者指正。

编 者
2019年5月

上架指导

计算机\程序设计

封底文字

C语言是一种应用非常广泛的结构化程序设计语言,既适合于编写应用程序,又特别适合于编写系统软件。
本书是结合作者多年的教学经验编写而成的,在内容编排上尽量体现出易学的特点,在文字叙述上力求条理清晰,在教材体系上重视理论与实践相结合,以便于读者低起点、高效率地掌握C语言的编程技巧。

本版在第3版的基础上进行了如下的修订和调整:
程序设计语言平台升级为Visual C++ 2010,书中实例均在Visual C++ 2010环境下调试通过,并在《C语言程序设计习题解析与上机指导 第3版》中对Visual C++ 2010环境进行了详细的介绍,方便学生自主学习。
增加了部分章节中的课后习题以及趣味程序设计实例,以激发学生的学习兴趣。
为满足学时的安排和教学需要,重新调整了章节的组合,删除了第2章“算法与程序设计基础”和第12章“面向对象程序设计与C++基础”。

图书目录

前言
第1章 C语言概述 1
1.1 程序设计的基本概念 1
1.2 C语言发展简史 2
1.3 C语言的特点 3
1.4 简单C语言程序举例 4
1.5 C语言程序的组成与结构 5
1.6 C语言程序的开发步骤 6
小结 7
习题 7
第2章 数据类型、运算符与表达式 9
2.1 C语言的基本符号 9
2.1.1 标识符 9
2.1.2 常量 10
2.1.3 变量 10
2.1.4 关键字 11
2.2 C语言的数据类型 12
2.2.1 整型数据 12
2.2.2 实型数据 14
2.2.3 字符型数据 15
2.2.4 用sizeof 计算数据类型所占的内存空间 17
2.3 运算符和表达式 18
2.3.1 算术运算符和算术表达式 19
2.3.2 赋值运算符和赋值表达式 20
2.3.3 逗号运算符和逗号表达式 21
2.4 数据类型转换 21
2.4.1 不同数据类型的数据间的混合运算 21
2.4.2 强制类型转换 23
2.5 自增运算和自减运算 23
2.6 位运算 24
小结 27
习题 27
第3章 数据的输入和输出 29
3.1 数据的输出 29
3.1.1 格式输出函数printf 29
3.1.2 字符输出函数putchar 33
3.2 数据的输入 33
3.2.1 格式输入函数scanf 33
3.2.2 字符输入函数getchar 36
3.3 应用举例 37
小结 38
习题 38
第4章 选择结构 42
4.1 算法的概念及其描述方法 42
4.1.1 算法的概念 42
4.1.2 算法的描述方法 43
4.2 关系运算符与关系表达式 45
4.2.1 关系运算符 45
4.2.2 关系表达式 45
4.3 逻辑运算符与逻辑表达式 46
4.3.1 逻辑运算符 46
4.3.2 逻辑表达式 47
4.4 选择语句 48
4.4.1 if语句 48
4.4.2 if语句的嵌套 51
4.4.3 switch语句 52
4.5 条件运算符与条件表达式 54
4.6 应用举例 55
小结 58
习题 58
第5章 循环结构 62
5.1 循环结构概述 62
5.2 循环语句 63
5.2.1 while循环语句 63
5.2.2 do-while循环语句 65
5.2.3 for循环语句 66
5.2.4 空语句 68
5.2.5 三种循环语句的比较 69
5.3 循环嵌套 70
5.4 循环流程控制 73
5.4.1 break语句 73
5.4.2 continue语句 75
5.4.3 goto语句 77
5.4.4 三种语句的区别 78
5.5 程序设计实例 80
5.5.1 穷举法 80
5.5.2 迭代法 84
小结 88
习题 89
第6章 数组 96
6.1 一维数组 96
6.1.1 一维数组的定义和引用 96
6.1.2 一维数组的初始化 99
6.1.3 一维数组应用举例 101
6.2 二维数组 104
6.2.1 二维数组的定义和引用 104
6.2.2 二维数组的初始化 107
6.2.3 二维数组应用举例 109
6.3 字符数组 112
6.3.1 字符数组的定义和引用 112
6.3.2 字符数组的初始化 113
6.3.3 字符数组应用举例 114
6.4 字符串 116
6.4.1 字符串的存储方法 116
6.4.2 字符串的输入和输出 117
6.4.3 字符串处理函数 120
6.4.4 字符串应用举例 123
小结 125
习题 126
第7章 函数 133
7.1 函数的基本概念 133
7.1.1 函数的概念 133
7.1.2 函数的定义 134
7.1.3 函数的调用 135
7.1.4 函数参数的传递方式 137
7.1.5 函数的返回值 138
7.1.6 函数的原型声明 140
7.2 数组作为函数参数 142
7.2.1 一维数组作为函数参数 142
7.2.2 二维数组作为函数参数 143
7.2.3 数组作为函数参数的调用及应用举例 143
7.3 函数的嵌套调用和递归调用 145
7.3.1 函数的嵌套调用 145
7.3.2 函数的递归调用 147
7.4 变量的作用域和存储方法 150
7.4.1 局部变量和全局变量 150
7.4.2 变量的存储方法 153
7.5 内部函数和外部函数 156
7.6 应用举例 156
小结 162
习题 163
第8章 编译预处理 168
8.1 宏定义 168
8.2 文件包含 170
8.3 条件编译 171
小结 172
习题 172
第9章 指针 175
9.1 指针的基本概念及指针变量的定义 175
9.1.1 指针的基本概念 175
9.1.2 指针变量的定义方法 176
9.2 指针运算 176
9.2.1 赋值运算 176
9.2.2 取地址运算 176
9.2.3 取内容运算 177
9.2.4 指针表达式与整数相加、相减运算 178
9.2.5 自增、自减运算 179
9.2.6 同类指针相减运算 180
9.2.7 关系运算 180
9.2.8 强制类型转换运算 181
9.2.9 空指针 181
9.3 指针变量与一维数组 181
9.3.1 指针变量与一维数组之间的联系和区别 181
9.3.2 字符串指针与字符串 182
9.4 指针与函数 184
9.4.1 指针作为函数参数 184
9.4.2 返回指针的函数 187
9.4.3 函数的指针和指向函数的指针变量 188
9.5 指针与二维数组 190
9.5.1 二维数组的结构 190
9.5.2 二维数组元素及其地址 190
9.5.3 指针数组 192
9.5.4 指针与字符串数组 193
9.5.5 指向数组的指针变量 194
9.6 二级指针 196
9.7 内存空间的动态分配 198
9.7.1 指向void的指针 198
9.7.2 常用内存管理函数 199
9.8 main函数的参数 200
9.8.1 命令行参数 200
9.8.2 指针数组作为main函数的形参 200
9.9 应用举例 201
小结 205
习题 206
第10章 结构体与共用体 213
10.1 结构体类型和结构体变量 213
10.1.1 结构体类型的定义 213
10.1.2 结构体变量的定义 214
10.1.3 结构体变量的引用 216
10.1.4 结构体变量的初始化 217
10.2 结构体数组 217
10.2.1 结构体数组的定义 217
10.2.2 结构体数组的引用 217
10.2.3 结构体数组的初始化 218
10.2.4 应用举例 218
10.3 结构体指针 220
10.3.1 结构体指针变量的定义 220
10.3.2 结构体数组指针 221
10.4 结构体类型数据在函数间的传递 222
10.4.1 结构体变量作为函数参数 222
10.4.2 结构体指针变量作为函数参数 223
10.4.3 结构体数组作为函数参数 223
10.4.4 应用举例 224
10.5 共用体 227
10.5.1 共用体类型的定义 227
10.5.2 共用体变量的定义 228
10.5.3 共用体变量的引用和初始化 228
10.6 枚举类型 231
10.6.1 枚举类型的说明 231
10.6.2 枚举型变量的定义 231
10.7 用typedef定义类型 233
10.8 链表及其简单操作 234
10.8.1 链表的概念 234
10.8.2 链表的基本操作 235
小结 238
习题 239
第11章 文件 242
11.1 文件概述 242
11.2 文件的打开与关闭 244
11.2.1 打开文件 244
11.2.2 关闭文件 246
11.3 文件的读写操作 246
11.3.1 格式化读写函数 246
11.3.2 字符读写函数 248
11.3.3 字符串读写函数 249
11.3.4 数据块读写函数 250
11.4 文件的随机访问 253
11.4.1 文件位置指针回绕函数 253
11.4.2 文件位置指针定位函数 254
11.4.3 文件位置指针获取函数 255
11.4.4 文件结束检测函数 255
11.5 文件的其他操作 256
11.5.1 文件错误检测函数 256
11.5.2 标准输入/输出设备 257
11.5.3 刷新文件缓冲区函数 257
小结 258
习题 258
附录A C语言的关键字 266
附录B 双目算术运算中两边运算量类型转换规律 267
附录C 运算符的优先级和结合性 268
附录D 常用字符与ASCII码对照表 269
附录E 常用库函数 271
习题参考答案 275
参考文献 280

教学资源推荐
作者: [美]布兰德利·N. 米勒(Bradley N. Miller) 大卫·L. 拉农(David L. Ranum) 朱莉·安德森(Julie Anderson) 著
作者: 谢满德 邵俊 编著
作者: Brian W.Kernighan,Dennis M.Ritchie
作者: Calvin Lin;Lawrence Snyder
参考读物推荐