图书简介:
目 录
第1章 程序设计概述 1
1.1 程序设计语言 1
1.1.1 语言 1
1.1.2 分类 1
1.2 程序与程序设计 3
1.2.1 程序 3
1.2.2 程序设计 3
1.3 C语言的发展和特点 3
1.3.1 C语言的发展 4
1.3.2 C语言的特点 5
1.4 C语言的程序结构 6
习题1 8
第2章 基本数据类型与运算 11
2.1 基本数据类型 11
2.1.1 数据类型的概念 11
2.1.2 基本数据类型组成 11
2.2 基本概念 12
2.2.1 标志符 12
2.2.2 常量 13
2.2.3 变量 16
2.3 基本运算 18
2.3.1 变量赋值 19
2.3.2 算术运算 21
2.3.3 关系运算符和关系表达式 25
2.3.4 逻辑运算符 26
2.4 数据的输入与输出 28
2.4.1 格式化输出函数 28
2.4.2 格式化输入函数 31
2.4.3 字符输入与输出函数 33
2.5 知识扩展 34
2.5.1 条件运算符和条件表达式 34
2.5.2 逗号运算符和逗号表达式 35
2.5.3 数据类型长度运算符 36
2.5.4 算术自反赋值运算符 37
2.5.5 位运算 38
2.5.6 运算符的结合性和优先级 43
2.6 疑难辨析 43
习题2 47
第3章 简单程序设计 52
3.1 顺序结构 52
3.1.1 顺序语句 52
3.1.2 顺序程序设计 54
3.2 选择结构 55
3.2.1 选择性问题 55
3.2.2 if语句 55
3.2.3 switch开关语句 57
3.2.4 选择程序设计 58
3.3 知识扩展 59
3.4 应用举例 60
3.5 疑难辨析 65
习题3 66
第4章 循环程序设计 68
4.1 循环问题的引入 68
4.2 循环控制语句 68
4.2.1 While语句 68
4.2.2 for语句 69
4.2.3 循环程序设计 72
4.3 多重循环 74
4.3.1 多重循环的引入 74
4.3.2 多重循环程序设计 75
4.4 知识扩展 78
4.4.1 do…while语句 78
4.4.2 break和continue语句 79
4.4.3 goto语句和标号 80
4.5 应用举例 81
4.6 疑难辨析 83
习题4 84
第5章 数组 89
5.1 一维数组的使用 89
5.1.1 一维数组概述 90
5.1.2 一维数组应用举例 92
5.2 二维数组的使用 97
5.2.1 二维数组概述 97
5.2.2 二维数组应用举例 99
5.3 知识扩展 101
5.3.1 字符串的存储与处理 101
5.3.2 多维数的使用 105
5.4 应用举例 108
5.5 疑难辨析 110
习题5 113
第6章 指针与链表 118
6.1 指针 118
6.1.1 指针的使用 118
6.1.2 指针与一维数组 122
6.2 链表 122
6.2.1 动态空间的申请 122
6.2.2 动态空间的释放 123
6.2.3 链表的基本操作 124
6.3 知识扩展 129
6.3.1 指针与二维数组 129
6.3.2 指向一维数组的指针变量 131
6.3.3 指针数组 132
6.3.4 指向指针的指针 134
6.3.5 对指针的几点说明 135
6.4 应用举例 136
6.5 疑难辨析 141
习题6 147
第7章 模块化程序设计 153
7.1 模块化程序设计概述 153
7.1.1 结构化程序设计的基本思想 153
7.1.2 函数简介 154
7.2 函数的使用 155
7.2.1 自定义函数的定义 155
7.2.2 自定义函数的说明 157
7.2.3 函数调用 158
7.2.4 函数使用举例 159
7.3 复杂数据的描述 163
7.3.1 结构体 163
7.3.2 结构体应用举例 167
7.4 知识扩展 169
7.4.1 共用体 169
7.4.2 枚举类型 170
7.4.3 用typedef定义类型 171
7.4.4 变量的存储类别 172
7.4.5 变量的生存期 174
7.4.6 变量的作用域 175
7.4.7 函数的递归调用 176
7.4.8 函数指针 177
7.4.9 编译预处理 178
7.4.10 工程化程序设计 184
7.5 应用举例 189
7.6 疑难解析 198
习题7 206
第8章 数据文件的处理 217
8.1 文件的基本概念 217
8.1.1 C语言支持的文件格式 217
8.1.2 文件操作的基本思路 218
8.2 文件的基本操作 219
8.2.1 文件指针 219
8.2.2 文件的打开与关闭 220
8.2.3 字节级的文件的读/写 221
8.2.4 字符串文件读/写 223
8.2.5 文件结束判断函数 224
8.3 知识扩展 227
8.3.1 数据的格式化读/写 227
8.3.2 记录级的文件读/写 229
8.3.3 文件位置指针的移动 231
8.4 应用举例 233
8.5 疑难辨析 235
习题8 237
附录A Visual C++集成环境使用指南 241
附录B 常用运算符及其优先级
和结合性 245
附录C 标准C语言头文件 246
附录D C语言系统关键字 247
附录E ASCII码表 248
参考文献 249
展开
前 言
计算思维代表着一种普遍认识和基本技能,涉及运用计算机科学的基础概念去求解问题、设计系统和理解人类的行为,涵盖了反映计算机科学之广泛性的一系列思维活动。计算思维将如计算机一样,渗入人们的生活之中,诸如“算法”和“前提条件”等计算机专业名词也将成为日常词汇的一部分。所以,计算思维不仅属于计算机专业人员,更是每个人应掌握的基本技能。
程序设计作为实现计算思维的核心课程之一,在大学生的知识体系中占有重要位置,其内容组织应该体现创造性思维的素质教育培养过程。面对信息新技术发展和国家对人才信息素质培养的需求,本教材力图在遵循教育和学习规律的基础上,克服传统C语言教材以语法介绍为主的不足,以快速掌握程序设计为主线,采用“核心语法为先导、实践应用为目的、知识扩展为提升,疑难辨析以解惑”的内容组织方式,突出知识与实践的关联性,注重内容的层次性,使学习者在有限的时间内学以致用,真正理解程序设计及其思想。
本书是国家精品课程“大学计算机”系列课程“C语言程序设计”的主教材,也是《教育部大学计算机课程改革项目》成果之一。
全书共8章,对C语言及程序设计的基本概念、原理和方法从基本概念、基础使用、应用提升三个层面逐层展开。
基本概念层面:从培养程序设计基本概念和基本逻辑思维能力入手,主要包括程序设计概述、基本数据类型与运算、简单程序设计、循环程序设计4方面的知识,重点突出程序设计的基本思想和C语言的基本数据类型,以及程序控制的基本构架。通过学习,使读者了解程序设计的基本思路,初步掌握C语言的基本语法和程序设计的基本概念。
基础使用层面:从培养分析问题和解决问题的能力入手,主要包括数组、指针与链表两方面内容。通过学习,使学习者初步掌握分析问题和解决问题的方法。
应用提升层面:从强化逻辑思维能力和程序设计能力培养入手,主要包括模块化程序设计、数据文件的处理两方面内容。通过学习,进一步提高分析问题和解决问题的能力,使学习者真正掌握程序设计技能。
本书体系完整、结构严谨、注重实用、强调实践,在编写时兼顾了计算机等级考试的要求。为方便教学,本书还配有电子课件,任课教师可登录华信教育资源网(www.hxedu.com.cn)免费注册下载。
本书由多年从事计算机教育的一线教师编写,董卫军编写第5~7章,索琦编写第1章、第8章及附录,邢为民编写第2~4章。全书由董卫军统稿,西北大学耿国华教授主审。感谢教学团队成员的帮助,由于作者水平有限,书中难免有不妥之处,恳请读者指正。
董卫军
于西安西北大学
展开