C语言程序设计(第二版)
书 号:9787113137410
丛 书 名:高职高专计算机系列规划教材
作 者:贾学斌 宋海民
译 者:
开 本:16开
装 帧:平装
正文语种:
出 版 社:中国铁道出版社有限公司
定 价:36元
-
内容简介
本书根据“C程序设计”课程一体化教学的思想,以能力培养为核心,以实例为主线,将本教材分为11章,主要内容包括:C语言概述、基本数据类型和运算符及表达式、数据的输入输出、结构化程序设计、数组、函数、指针、构造数据类型、文件、编译预处理、位运算等。每章后附有各种类型习题。书末附有常用字符与ASCII代码对照表、运算符的优先级和结合性及C语言常用库函数。 -
前言
第二版前言
本书的第一版自2007年1月出版以来,得到许多读者的关心,他们提出了很多宝贵的意见。根据读者的意见和高职高专的教学大纲,C语言课程一体化教学以能力培养为核心的思想,以实例为主线,以培养实用人才为原则,以及教学实践的需要,对第一版的教材进行了修订。为了使C程序设计的教学能够与时俱进,本书使用的开发环境由Turbo C 2.0改为Visual C++ 6.0,使程序的编译和运行更加方便。第二版保持了第一版的写作风格,保留了通俗易懂的特点,发扬了原有的特色,并在以下几个方面进行了修改。
(1)对第1章C语言概述中,C语言的发展史进行了重写,使读者看起来条理更加清晰。增加了C程序的开发过程、C语言常用的集成开发环境以及在Visual C++ 6.0中开发C程序等内容。
(2)根据理论知识够用的原则,删除了第2章实型数据在内存中的存放形式等知识点。
(3)对第4章结构化程序设计中,流程图进行了更加详尽的说明,对部分程序进行了调整。
(4)对第一版第5、9、10、12章的程序案例进行了调整,并修改了相关内容。
(5)将第一版第6章函数与第7章变量的作用域和存储类型的内容重新编写成新的第6章函数。
(6)删除第一版第13章实用项目开发技术简介。
对第一版全书各章的疏漏、例题、案例、习题进行了修改、完善和补充。将第一版的13章内容改写为11章的内容,所有程序均在Visual C++ 6.0系统中调试通过。
相信修订后的第二版会更加符合读者的需要。本书还配套出版了《C语言程序设计实训教程(第二版)》。
本书由武汉职业技术学院贾学斌、宋海民任主编,其中第1、2、3、8章由宋海民编写;第4、5章由胡大威编写;第6、7、9、10、11章及附录由贾学斌编写。以上各编者都是具有丰富教学实践经验的老师。
许多领导及老师对本书的出版给予了热情的支持,本书在编写过程中还得到了陈觎老师、周桂枝老师、张伟老师的帮助,以及中国铁道出版社通力合作,在此一并表示感谢。
感谢广大老师及读者使用本书,本书力争写出编者的经验和体会,由于编者水平有限,书中不足之处在所难免,恳请广大读者批评指正。
(编者E-mail:jxbin130@sina.com)。 -
目录
目 录
第1章 C语言概述 1
1-1 C语言的发展史 1
1-2 C语言的特点 2
1-3 算法 3
1-3-1 算法的概念 4
1-3-2 算法的特性 5
1-3-3 算法的描述 6
1-3-4 结构化程序设计 8
1-4 C语言的语法基础 10
1-4-1 C语言字符集 10
1-4-2 标识符 11
1-4-3 保留字 11
1-5 简单的C程序设计 12
1-5-1 赋值语句 12
1-5-2 printf函数 13
1-5-3 scanf函数 14
1-5-4 库函数和头文件 14
1-6 C程序的开发过程 16
1-7 C语言常用集成开发环境 17
1-8 程序案例 18
1-9 在Visual C++ 6.0中开发C程序 21
1-9-1 Visual C++ 6.0集成
开发环境简介 21
1-9-2 建立控制台应用程序 23
1-10 小结 27
1-11 习题 28
第2章 基本数据类型、运算符
及表达式 30
2-1 C语言的数据类型 30
2-2 常量与变量 31
2-2-1 常量 31
2-2-2 变量 31
2-3 整型数据 33
2-3-1 整型常量 33
2-3-2 整型变量 33
2-4 实型数据 36
2-4-1 实型常量 36
2-4-2 实型变量 37
2-5 字符型数据 38
2-5-1 字符常量 38
2-5-2 转义序列 38
2-5-3 字符串常量 39
2-5-4 符号常量 39
2-5-5 字符型变量 40
2-5-6 字符数据在内存中的存
放形式及其使用方法 41
2-6 运算符和表达式 42
2-6-1 运算符的分类 42
2-6-2 运算符的优先级与
结合性 43
2-6-3 算术运算符和算术
表达式 43
2-6-4 增1、减1运算符及
表达式 45
2-6-5 赋值运算符和赋值
表达式 46
2-6-6 关系运算符和关系
表达式 48
2-6-7 逻辑运算符和逻辑
表达式 50
2-6-8 逗号运算符和逗号
表达式 52
2-6-9 sizeof运算符 52
2-7 数据类型的转换 53
2-7-1 自动类型转换 54
2-7-2 强制类型转换 54
2-8 程序案例 55
2-9 小结 56
2-10 习题 57
第3章 数据的输入/输出 60
3-1 用putchar函数输出一个字符 60
3-2 用getchar函数输入一个字符 61
3-3 用printf函数输出数据 62
3-3-1 printf函数的一般格式 62
3-3-2 格式字符 63
3-4 用scanf函数输入数据 68
3-4-1 scanf函数的一般格式 68
3-4-2 格式字符 68
3-4-3 通过scanf函数从键盘
输入数据 69
3-4-4 scanf函数输入中常见
错误分析 70
3-5 程序案例 71
3-6 小结 72
3-7 习题 72
第4章 结构化程序设计 77
4-1 结构化程序设计的概念 77
4-2 选择结构程序设计 78
4-2-1 if语句 78
4-2-2 if语句的嵌套 81
4-2-3 条件运算符和条件
表达式 83
4-3 switch语句 84
4-4 while语句 88
4-4-1 while循环的一般格式 88
4-4-2 while循环的执行过程 88
4-5 do…while语句 90
4-5-1 do…while循环的
一般格式 90
4-5-2 do…while循环的
执行过程 90
4-5-3 do…while语句和while
语句的区别与联系 91
4-6 for语句 92
4-6-1 for循环的一般格式 92
4-6-2 for循环的执行过程 93
4-6-3 for、while、do…while
3种循环的比较 96
4-7 循环嵌套 96
4-8 break语句和continue语句 97
4-8-1 break语句 97
4-8-2 continue语句 98
4-9 语句标号和goto语句 99
4-9-1 语句标号 99
4-9-2 goto 语句 99
4-10 程序案例 100
4-11 小结 101
4-12 习题 102
第5章 数组 107
5-1 数组的概念 107
5-2 一维数组 108
5-2-1 一维数组的定义 108
5-2-2 一维数组元素的引用 109
5-2-3 一维数组的初始化 110
5-2-4 一维数组的应用 111
5-3 二维数组 114
5-3-1 二维数组的定义 114
5-3-2 二维数组元素的引用 115
5-3-3 二维数组的初始化 115
5-3-4 二维数组的应用 116
5-4 字符数组 117
5-4-1 字符数组的定义 117
5-4-2 字符数组的初始化 117
5-4-3 字符数组的引用 118
5-4-4 字符串和字符串
结束标志 118
5-4-5 字符数组的输入输出 119
5-4-6 字符串处理函数 121
5-4-7 字符数组的应用 122
5-5 程序案例 123
5-6 小结 125
5-7 习题 126
第6章 函数 129
6-1 C程序的模块化结构 129
6-1-1 概述 129
6-1-2 C程序的模块化结构 130
6-1-3 函数的分类 131
6-2 函数的定义 132
6-2-1 无参函数的定义 132
6-2-2 有参函数的定义 132
6-2-3 函数定义的应用 133
6-3 函数的参数与返回值 133
6-3-1 函数的形式参数
和实际参数 133
6-3-2 返回语句 134
6-4 函数的调用 135
6-4-1 函数调用的一般格式 135
6-4-2 函数调用的方式 135
6-4-3 对被调函数的声明 137
6-5 函数的嵌套调用 138
6-6 函数的递归调用 139
6-6-1 函数的直接递归调用 139
6-6-2 函数的间接递归调用 140
6-6-3 函数的递归调用应用 140
6-7 数组作为函数参数 143
6-7-1 数组元素作函数实参 143
6-7-2 数组名作函数参数 144
6-7-3 二维数组名作函数
参数 145
6-8 变量的作用域和存储类别 146
6-8-1 变量的作用域 146
6-8-2 变量的存储类别 147
6-8-3 局部变量的存储类别 147
6-8-4 全局变量的存储类别 152
6-9 函数的作用域和存储类别 155
6-9-1 内部函数 155
6-9-2 外部函数 155
6-10 程序案例 156
6-11 小结 158
6-12 习题 160
第7章 指针 167
7-1 指针的概述 167
7-2 指针变量 169
7-2-1 指针变量的定义与
初始化 169
7-2-2 指针变量的引用 171
7-2-3 指针变量作为函数
的参数 173
7-3 通过指针引用数组 176
7-3-1 指向数组元素的指针 176
7-3-2 指针变量的运算 176
7-3-3 通过指针引用
数组元素 179
7-3-4 数组名和指针变量
作函数参数 182
7-4 指针与字符串 184
7-4-1 字符串指针变量的
定义与使用 184
7-4-2 使用字符串指针变量与
使用字符数组的区别 187
7-5 指针与函数 188
7-5-1 函数指针变量 188
7-5-2 指针型函数 189
7-6 指针数组和指向指针的指针 190
7-6-1 指针数组 190
7-6-2 指向指针的指针 191
7-7 main函数的形参、动态存储
分配和void指针 192
7-7-1 指针数组作为main
函数的形参 192
7-7-2 动态存储分配 193
7-7-3 void指针类型 194
7-8 程序案例 195
7-9 小结 196
7-10 习题 197
第8章 构造数据类型 201
8-1 结构体 201
8-1-1 结构体类型说明 201
8-1-2 结构体变量的定义 202
8-1-3 结构体成员的引用
和初始化 205
8-2 结构体数组 207
8-2-1 结构体数组的定义 207
8-2-2 结构体数组的初始化 209
8-3 结构体与函数 209
8-3-1 结构体变量作为
函数参数 209
8-3-2 结构体变量为函数
的返回值 212
8-4 结构体与指针 214
8-4-1 结构体变量指针 214
8-4-2 结构体数组指针 216
8-4-3 用指向结构体的
指针作函数参数 217
8-5 链表 218
8-5-1 链表概述 218
8-5-2 链表的基本操作 219
8-6 共用体 221
8-6-1 共用体的概念 221
8-6-2 共用体变量的
引用方式 222
8-7 枚举类型 223
8-8 用typedef定义类型 224
8-9 程序案例 226
8-10 小结 227
8-11 习题 228
第9章 文件 233
9-1 文件概述 233
9-1-1 文件的概念 233
9-1-2 文件指针 234
9-1-3 缓冲文件系统和
非缓冲文件系统 235
9-2 文件的打开和关闭 236
9-2-1 用fopen函数
打开文件 236
9-2-2 用fclose函数
关闭文件 238
9-3 文件的顺序读写 239
9-3-1 文本文件中字符的
输入/输出 239
9-3-2 文本文件中字符串
的输入/输出 240
9-3-3 文本文件的格式化
输入/输出 242
9-3-4 二进制文件的
输入/输出 242
9-4 文件的随机读写 243
9-5 文件检测函数 244
9-6 程序案例 245
9-7 小结 247
9-8 习题 248
第10章 编译预处理 252
10-1 宏定义 252
10-1-1 不带参数的宏定义 252
10-1-2 带参数的宏定义 254
10-1-3 终止宏定义 257
10-2 文件包含 257
10-3 条件编译 259
10-4 程序案例 262
10-5 小结 262
10-6 习题 263
第11章 位运算 267
11-1 位运算符与位运算 267
11-1-1 “按位与”运算 268
11-1-2 “按位或”运算 269
11-1-3 “按位异或”运算 269
11-1-4 “按位取反”运算 270
11-1-5 “左移”运算 271
11-1-6 “右移”运算 271
11-1-7 位运算赋值运算符 271
11-2 位段 271
11-3 程序案例 273
11-4 小结 274
11-5 习题 275
附录A 常用字符与ASCII代码对照表 278
附录B 运算符的优先级和结合性 279
附录C C语言的库函数 280
参考文献 290
-
作者介绍
主要著译者顺序姓名学历职称学科专长通讯地址1 贾学斌硕士 副教授 计算机 工作单位湖北职业技术学院 邮政编码 电话13720115162 2 工作单位 邮政编码 电话 3 工作单位 邮政编码 电话 审校者(主审者) 学历 工作单位 邮政编码 电话 职称 工作单位 邮政编码 电话 -
编辑推荐
体系合理,概念清晰,例题丰富 -
书评书荐
-
附件下载
图书推荐