C语言程序设计
书 号:9787113178833
丛 书 名:普通高等学校计算机基础教育“十二五”规划教材·创新系列
作 者:常雪琴 叶得学
译 者:
开 本:16开
装 帧:平装
正文语种:
出 版 社:中国铁道出版社有限公司
定 价:38元
-
内容简介
本书共分12章,主要内容包括:c语言概述、数据类型与基本运算、顺序结构程序设计、选择结构程序设计、循环结构程序设计、数组、函数、预处理命令、结构体和共用体、指针、位运算、文件和实验指导。本书是从事基础教学教师多年教学经验的总结,同时参考了全国计算机等级考试的基本要求,可以帮助学生提高程序的编写和分析能力。本书语言简练,重点突出,思路清晰,实用性强。学生通过本书的学习,能够在较短时间内掌握C语言的基本理论知识,并灵活运用所学知识编写应用程序。本书适合作为高等院校高级程序设计语言课程的配套教材,也可作为计算机爱好者的学习参考书。 -
前言
C语言是国际上广泛流行的、很有发展前途的计算机高级语言。它适合于作为系统描述语言,既可用来编写系统软件,也可用来编写应用软件。各个高校普遍开设了C语言课程,作为学生学习计算机语言的入门课程。
本书充分考虑学生的特点,按照全国计算机等级考试的基本要求,内容上遵循深入浅出、循序渐进的原则,全面系统地讨论C语言基本语法和组成,介绍程序设计的基本思想和方法,着重培养学生的计算机编程能力。全书结构紧凑,概念准确,重点突出,例题丰富,叙述流畅,阐述问题思路清晰。通过习题和实验指导,使学生随时自我检查学习效果并获得相应的反馈信息,逐步提高阅读程序、分析程序及编写程序的能力,掌握调试程序的基本方法和技巧,为将来学习其他计算机语言和编写程序打下良好的基础。
在具体写作风格上,本书从培养学生的实际操作能力的角度出发,从不同的应用角度提炼实例,使学生从实际问题出发,有针对性地练习,从而提高学生编写程序和分析程序的能力。
本书由常雪琴、叶得学担任主编,由贵彩虹、张鑫、杨光、韩如冰、曹丽蓉担任副主编。其中,常雪琴承担本书的大纲编写和审稿工作,并编写第1章、第2章、第3章和附录A、B、C;叶得学编写第4章和第8章;贵彩虹编写第6章、第12章和附录D;张鑫编写第5章和第7章;韩如冰编写第10章;曹丽蓉编写第9章;杨光编写第11章。本书在编写过程中参考和借鉴了大量国内外最新的著作和教材,同时得到了各位一线教师的大力指导和帮助,在此表示衷心的感谢。
因为时间仓促,水平有限,书中难免有疏漏和不足之处,敬请各位读者批评指正。我们期待您的意见与建议。
编 者
2013年9月 -
目录
第1章 C语言概述 1
1.1 程序概述 1
1.1.1 计算机程序 1
1.1.2 程序的特征 1
1.1.3 计算机程序的执行过程 2
1.2 算法 3
1.2.1 算法概述 3
1.2.2 算法的特点 3
1.2.3 算法的表示 3
1.2.4 结构化程序设计的三种基本结构 5
1.2.5 程序设计中的常用算法 5
1.3 C语言的发展及其特点 8
1.3.1 C语言的发展简史 8
1.3.2 C语言程序结构 11
1.3.3 C语言的基本语法单位 13
1.3.4 C程序的开发过程 14
本章小结 17
思考题 17
第2章 数据类型与基本运算 19
2.1 数据类型 19
2.2 常量和变量 19
2.2.1 常量 19
2.2.2 变量 20
2.3 整型数据 22
2.3.1 整型常量 22
2.3.2 整型变量 22
2.3.3 整型数据的输出 24
2.3.4 整型数据的输入 28
2.4 浮点型数据 31
2.4.1 浮点型常量 31
2.4.2 浮点型变量 32
2.4.3 浮点型数据的输入和输出 33
2.5 字符型数据 34
2.5.1 字符常量 35
2.5.2 字符变量 35
2.5.3 字符型数据的输入和输出 37w
2.5.4 字符串常量 37
2.6 算术运算符和表达式 39
2.6.1 C语言运算符概述 39
2.6.2 算术运算符和表达式概述 40
2.6.3 自增、自减运算符 41
2.7 赋值运算符和表达式 43
2.7.1 赋值运算符 43
2.7.2 赋值表达式 43
2.7.3 自动类型转换 44
2.7.4 强制类型转换 45
2.7.5 赋值表达式的类型转换 46
2.7.6 复合的赋值运算符 47
2.8 逗号运算符和表达式 48
本章小结 49
思考题 50
第3章 顺序结构程序设计 53
3.1 C语言语句概述 53
3.2 顺序结构 56
3.2.1 赋值语句 56
3.2.2 顺序结构程序设计举例 57
本章小结 58
思考题 58
第4章 选择结构程序设计 59
4.1 关系运算符和关系表达式 59
4.1.1 关系运算符及其优先次序 59
4.1.2 关系表达式 60
4.2 逻辑运算符和逻辑表达式 61
4.2.1 逻辑运算符及其优先次序 61
4.2.2 逻辑运算的值 62
4.2.3 逻辑表达式 63
4.3 if语句 64
4.3.1 if语句的三种形式 64
4.3.2 if语句的嵌套 67
4.3.3 条件运算符和条件表达式 68
4.4 switch语句 69
4.5 程序举例 71
本章小结 72
思考题 72
第5章 循环结构程序设计 75
5.1 循环结构概述 75
5.2 goto语句以及用if语句构成循环 75
5.3 while语句 76
5.4 do…while语句 78
5.5 for语句 80
5.6 break和continue语句 83
5.6.1 break语句 83
5.6.2 continue 语句 85
5.7 循环的嵌套 85
5.8 程序举例 87
本章小结 91
思考题 91
第6章 数组 94
6.1 一维数组的定义和引用 94
6.1.1 一维数组的定义 94
6.1.2 一维数组元素的引用 95
6.1.3 一维数组的初始化 96
6.1.4 一维数组程序举例 97
6.2 二维数组的定义和引用 98
6.2.1 二维数组的定义 98
6.2.2 二维数组元素的引用 99
6.2.3 二维数组的初始化 100
6.3 字符数组 101
6.3.1 字符数组的定义 101
6.3.2 字符数组的初始化 101
6.3.3 字符数组的引用 102
6.3.4 字符串和字符串结束标志 102
6.3.5 字符数组的输入和输出 103
6.3.6 字符串处理函数 104
6.4 程序举例 107
本章小结 109
思考题 110
第7章 函数 112
7.1 函数概述 112
7.2 函数定义的一般形式 113
7.2.1 无参函数的定义形式 113
7.2.2 有参函数定义的一般形式 114
7.3 函数的参数和函数的值 115
7.3.1 形式参数和实际参数 115
7.3.2 函数的返回值 116
7.4 函数的调用 117
7.4.1 函数调用的一般形式 117
7.4.2 函数调用的方式 117
7.4.3 被调用函数的声明和函数原型 118
7.5 函数的嵌套调用 119
7.6 函数的递归调用 120
7.7 数组作为函数参数 123
7.8 局部变量和全局变量 127
7.8.1 局部变量 127
7.8.2 全局变量 129
7.9 变量的存储类别 130
7.9.1 动态存储方式与静态存储方式 130
7.9.2 auto变量 131
7.9.3 用static声明局部变量 131
7.9.4 register变量 132
7.9.5 用extern声明外部变量 133
本章小结 133
思考题 134
第8章 指针 137
8.1 地址指针的基本概念 137
8.2 变量的指针和指向变量的指针变量 138
8.2.1 定义一个指针变量 138
8.2.2 指针变量的引用 138
8.2.3 指针变量作为函数参数 141
8.2.4 指针变量运算 143
8.3 数组指针和指向数组的指针变量 146
8.3.1 指向数组元素的指针 146
8.3.2 通过指针引用数组元素 146
8.3.3 数组名作函数参数 149
8.3.4 指向多维数组的指针和指针变量 153
8.4 字符串的指针和指向字符串的指针变量 156
8.4.1 字符串的表示形式 156
8.4.2 使用字符串指针变量与字符数组的区别 158
8.5 函数指针变量 159
8.6 指针型函数 160
8.7 指针数组和指向指针的指针 161
8.7.1 指针数组的概念 161
8.7.2 指向指针的指针 164
8.7.3 main()函数的参数 166
本章小结 167
思考题 168
第9章 结构体与共用体 171
9.1 结构体类型的定义和使用 171
9.1.1 定义一个结构的一般形式 171
9.1.2 结构类型变量的说明 172
9.1.3 结构变量成员的表示方法 174
9.1.4 结构变量的赋值 174
9.1.5 结构变量的初始化 175
9.2 结构数组 175
9.3 结构指针变量的说明和使用 177
9.3.1 指向结构变量的指针 177
9.3.2 指向结构数组的指针 179
9.3.3 结构指针变量作函数参数 180
9.4 动态存储分配 181
9.5 枚举类型 182
9.5.1 枚举类型的定义和枚举变量的说明 183
9.5.2 枚举类型变量的赋值和使用 183
9.6 联合类型 185
9.6.1 联合的定义 185
9.6.2 联合变量的说明 185
9.6.3 联合变量的赋值和使用 186
本章小结 187
思考题 188
第10章 预处理命令与位运算 191
10.1 宏定义 191
10.1.1 无参宏定义 191
10.1.2 带参宏定义 194
10.2 文件包含 198
10.3 条件编译 198
10.4 位运算符 200
10.5 与位运算有关的复合赋值运算符 204
本章小结 206
思考题 207
第11章 文件 209
11.1 C文件概述 209
11.2 标准文件和一般文件 210
11.2.1 标准文件 210
11.2.2 一般文件 210
11.3 文件指针 211
11.4 高级读/写函数和低级读/写函数 211
11.5 文件的打开与关闭 211
11.5.1 文件的打开(fopen()函数) 211
11.5.2 文件的关闭(fclose()函数) 213
11.6 文件的读/写 213
11.6.1 字符读/写函数 214
11.6.2 字符串读/写函数 216
11.6.3 数据块读/写函数 217
11.6.4 格式化读/写函数 220
11.7 文件的定位 220
11.7.1 定位读/写指针函数fseek() 220
11.7.2 归位读/写指针函数rewind() 221
11.7.3 返回读/写指针函数ftell() 221
11.8 文件检测函数 223
11.8.1 文件结束检测函数 223
11.8.2 读/写文件出错检测函数 223
11.8.3 文件出错标志和文件结束标志置0 函数 223
11.9 C库文件 223
本章小结 224
思考题 225
第12章 实验指导 227
实验1 C程序的运行环境和方法 227
实验2 数据类型及基本运算 228
实验3 最简单的C程序设计 230
实验4 选择结构程序设计 231
实验5 循环控制 234
实验6 数组 236
实验7 函数 237
实验8 指针 239
实验9 结构体和共用体 243
实验10 编译预处理 243
实验11 文件 244
附录A ASCII码表 245
附录B 常用C库函数 246
附录C 习题参考答案 249
第1章 C语言概述 249
第2章 数据类型与基本运算 249
第3章 顺序结构程序设计 250
第4章 选择结构程序设计 251
第5章 循环结构程序设计 252
第6章 数组 256
第7章 函数 259
第8章 指针 263
第9章 结构体与共用体 268
第10章 预处理命令与位运算 269
第11章 文件 270
附录D 实验指导参考程序 273
实验2 数据类型及基本运算 273
实验3 最简单的C程序设计 273
实验4 选择结构程序设计 275
实验5 循环控制 279
实验6 数组 281
实验7 函数 284
实验8 指针 288
实验9 结构体和共用体 293
实验10 编译预处理 297
实验11 文件 299
参考文献 302 -
作者介绍
常雪琴,女,兰州商学院陇桥学院信息管理学院讲师,主要研究方向为高级程序设计语言、管理信息系统。叶得学,男,兰州商学院陇桥学院现代教育技术中心讲师,研究方向为高级程序设计语言、管理信息系统、数据仓库等。 -
编辑推荐
1、依据计算机等级考试的基本要求而编写。
2、精选大量例题、案例,让学生逐步提高阅读程序、分析程序以及编写程序的能力,掌握调试程序的基本方法和技巧,为将来学习其他计算机语言和编写程序打下良好的基础。
3、在具体写作风格上,从培养学生的实际操作能力的角度出发,从不同的应用角度提炼实例,使学习者从实际问题的出发,有针对性的练习,从而提高学习者的编写程序和分析程序的能力。 -
书评书荐
-
附件下载
图书推荐