基本信息:
书名: C语言程序设计(高等学校计算机应用规划教材)
出版社: 清华大学出版社
出版日期 2018
ISBN号: 9787302501176
1854339001
内容简介:
《C语言程序设计》按照程序设计的体系结构,系统地介绍了C语言程序设计的基本思想及基本方法。全书内容分为三部分。第一部分(第1~7章)依次介绍了C语言程序设计的基本应用,包括:C语言程序的结构,数据类型及其运算,基本语句,结构化程序设计的顺序结构、选择结构、循环结构,数组及函数的开发方法与应用实现;第二部分(第8~12章)详细介绍了C程序设计的高级应用,包括:编译预处理、结构体、共用体、指针、文件操作及位运算等应用;第三部分(附录一至三)列出了全国计算机等级考试二级C语言程序设计考试大纲及模拟题。
编辑推荐:
《C语言程序设计》可作为高等院校计算机类相关专业的程序设计入门教材或者高等院校非计算机专业本科生的计算机通用教材,也可作为计算机技术的培训教材,还可作为全国计算机等级考试的参考用书及“蓝桥杯”全国软件和信息技术专业人才大赛的参考用书。
《C语言程序设计》对应的电子课件、习题答案和实例源文件可以通过http://www.tupwk.com.cn/downpage网站下载。
1854339001
目录:
第1章 引言 1
1.1 程序设计语言 1
1.1.1 低级语言 1
1.1.2 高级语言 2
1.2 程序结构及其特点 3
1.2.1 程序结构 3
1.2.2 程序结构的特点 3
1.2.3 程序书写规则 5
1.2.4 程序保留字 6
1.3 Visual C++ 2010的安装及使用 7
1.3.1 Visual C++ 2010的安装 7
1.3.2 Visual C++ 2010的启动 11
1.3.3 Visual C++上机过程 13
1.3.4 Visual C++ 2010的退出 15
1.4 习题 16
1.5 实验 17
第2章 数据类型及基本运算量 19
2.1 数据类型 19
2.1.1 基本数据类型 19
2.1.2 构造数据类型 23
2.1.3 指针类型 24
2.1.4 空类型(void) 24
2.2 常量 24
2.2.1 直接常量 24
2.2.2 符号常量 26
2.3 变量 27
2.3.1 变量的定义 28
2.3.2 变量的使用 28
2.4 库函数 30
2.4.1 数学函数 30
2.4.2 输入/输出函数 31
2.5 运算符及表达式 31
2.5.1 运算符及表达式简介 31
2.5.2 算术运算符和算术表达式 34
2.5.3 赋值运算符和赋值表达式 38
2.5.4 逗号运算符和逗号表达式 40
2.6 习题 42
2.7 实验 43
第3章 顺序结构程序设计 46
3.1 结构化程序设计概述 46
3.1.1 结构化程序的特点 46
3.1.2 结构化程序的设计方法 46
3.2 用流程图表示三种基本结构 47
3.3 C语句概述 49
3.4 赋值语句 51
3.5 数据输入/输出函数调用语句 52
3.5.1 数据输入/输出的方法 52
3.5.2 字符输入/输出 52
3.5.3 格式输入/输出 54
3.6 顺序结构程序设计举例 60
3.7 习题 61
3.8 实验 63
第4章 选择结构程序设计 64
4.1 选择结构程序设计概述 64
4.2 关系运算符和表达式 65
4.2.1 关系运算符 65
4.2.2 关系表达式 65
4.3 逻辑运算符和表达式 66
4.3.1 逻辑运算符 67
4.3.2 逻辑表达式 68
4.4 用if语句实现选择结构程序设计 69
4.4.1 if语句的3种形式 69
4.4.2 if语句的嵌套 74
4.4.3 条件运算符和条件表达式 76
4.5 用switch语句实现选择结构程序设计 77
4.6 选择结构程序设计举例 81
4.7 习题 83
4.8 实验 85
第5章 循环结构程序设计 87
5.1 循环结构程序设计概述 87
5.2 用于实现循环结构程序设计的语句 87
5.2.1 用while语句实现循环结构程序设计 87
5.2.2 用do-while语句实现循环结构程序设计 92
5.2.3 用for语句实现循环结构程序设计 95
5.2.4 循环的嵌套 99
5.2.5 几种循环语句的比较 101
5.3 用break和continue语句提前结束循环 101
5.3.1 break语句 101
5.3.2 continue语句 102
5.4 循环结构程序设计举例 104
5.5 习题 107
5.6 实验 111
第6章 数组 115
6.1 数组的概念 115
6.2 数组的定义 116
6.3 数组的初始化 118
6.4 数组元素的使用 120
6.5 数值数组元素的常用操作 123
6.5.1 一维数组元素的常用操作 123
6.5.2 二维数组元素的常用操作 134
6.6 数值数组的应用举例 140
6.6.1 一维数组程序举例 140
6.6.2 二维数组程序举例 144
6.7 字符数组的使用 145
6.7.1 字符串和字符串结束标志 145
6.7.2 字符数组的输入/输出 146
6.7.3 字符串处理函数 147
6.8 字符数组应用程序举例 152
6.9 习题 154
6.10 实验 158
第7章 用户自定义函数 163
7.1 用户自定义函数的种类 163
7.2 函数的定义 164
7.3 被调函数的声明 166
7.4 函数的调用 167
7.4.1 函数调用的一般形式 167
7.4.2 函数调用的方式 167
7.4.3 函数调用的参数传递 169
7.5 函数的嵌套调用 170
7.6 函数的递归调用 172
7.7 数组作函数参数 173
7.7.1 数组元素作函数实参 173
7.7.2 数组名作函数参数 174
7.8 变量的作用域 176
7.8.1 局部变量 176
7.8.2 全局变量 177
7.9 变量的存储类别 179
7.9.1 静态存储方式与动态存储方式 180
7.9.2 用auto声明动态局部变量 180
7.9.3 用static声明静态局部变量 180
7.9.4 用register声明寄存器变量 181
7.9.5 用extern声明外部变量 182
7.10 习题 183
7.11 实验 188
第8章 编译预处理 193
8.1 宏定义 193
8.1.1 无参宏定义 193
8.1.2 带参宏定义 195
8.2 文件包含 201
8.3 习题 202
8.4 实验 203
第9章 用户自定义数据类型 206
9.1 结构体类型 206
9.1.1 结构体类型的定义 206
9.1.2 结构体类型变量的定义 207
9.1.3 结构体类型变量的成员变量的表示方法 208
9.1.4 结构体类型变量的成员变量的使用方法 209
9.1.5 结构体类型变量的初始化及整体赋值 210
9.1.6 结构体类型数组的定义和使用 210
9.2 共用体类型 212
9.2.1 共用体类型的定义 212
9.2.2 共用体类型变量的使用 213
9.3 枚举类型 214
9.3.1 枚举类型的定义 215
9.3.2 枚举类型变量的定义 215
9.3.3 枚举类型变量的使用 216
9.4 类型声明符typedef 218
9.5 习题 219
9.6 实验 223
第10章 指针 226
10.1 指针的基本概念 226
10.2 指向变量的指针变量 226
10.2.1 指针变量的定义 227
10.2.2 指针运算符 227
10.2.3 指针变量作为函数参数 230
10.3 指向数组的指针变量 233
10.3.1 指向数组的指针变量的定义与赋值 233
10.3.2 通过指针变量引用数组元素 234
10.3.3 指向数组的指针变量作函数参数 237
10.3.4 指向多维数组的指针和指向多维数组的指针变量 243
10.3.5 字符串的指针和指向字符串的指针变量 246
10.4 指向函数的指针变量和指针型函数 248
10.4.1 指向函数的指针变量 249
10.4.2 指针型函数 250
10.5 指针型数组和指向指针的指针变量 252
10.5.1 指针型数组的定义及使用 252
10.5.2 指向指针的指针变量 255
10.6 指向结构体的指针变量 257
10.6.1 指向结构体变量的指针变量 257
10.6.2 指向结构体数组的指针变量 259
10.6.3 结构体指针变量作函数参数 260
10.7 动态存储分配 262
10.8 习题 264
10.9 实验 269
第11章 文件 274
11.1 文件的种类 274
11.2 文件指针和文件内部的位置指针 275
11.3 文件的操作 275
11.4 文件的打开与关闭 277
11.4.1 文件打开函数fopen() 277
11.4.2 文件关闭函数fclose() 279
11.5 文件的顺序读写 279
11.5.1 字符读写函数fgetc()和fputc() 279
11.5.2 字符串读写函数fgets()和fputs() 281
11.5.3 数据块读写函数fread()和fwrite() 284
11.5.4 格式化读写函数fscanf()和fprintf() 285
11.6 文件的定位和随机读写 287
11.6.1 文件的定位 287
11.6.2 文件的随机读写 288
11.7 文件检测函数 289
11.7.1 文件结束检测函数feof() 289
11.7.2 读写文件出错检测函数ferror() 289
11.7.3 清除文件出错标志和结束标志函数clearerr() 289
11.8 习题 290
11.9 实验 292
第12章 位运算 294
12.1 位运算符 294
12.1.1 按位与运算 294
12.1.2 按位或运算 295
12.1.3 按位异或运算 296
12.1.4 按位求反运算 296
12.1.5 左移运算 297
12.1.6 右移运算 297
12.2 位域(位段) 298
12.3 习题 300
附录一 全国计算机等级考试二级
C语言程序设计考试
大纲(2018年版) 303
附录二 全国计算机等级考试二级
C语言模拟题(一) 307
附录三 全国计算机等级考试二级
C语言模拟题(二) 320
参考文献 332
1854339001
前 言
我们基于多年的丰富教学经验及素材积累,精心编写了此书,目的是让初学者能够循序渐进地掌握程序设计的思想,系统地掌握C语言程序设计的方法。《C语言程序设计》从实用的角度出发,选取适当的相关案例,配备精练的讲解文字,辅助直观的算法流程图,编写缩进格式的实现程序,插入真实有效的运行结果。《C语言程序设计》针对初学者的特点和认知规律,精选内容,分散难点,降低台阶,丰富例题,深入浅出。
全书共分12章。第1章介绍C语言程序结构及其特点、Visual C++ 2010的安装及使用;第2章介绍数据类型、常量、变量、库函数和表达式;第3章介绍用传统流程图及N-S结构化流程图实现结构化程序设计的三种基本结构、赋值语句、数据输入/输出函数调用语句及顺序结构程序设计的方法;第4章介绍关系运算符和关系表达式、逻辑运算符和逻辑表达式、用if语句和switch语句实现选择结构程序设计的方法;第5章介绍用while语句、do-while语句和for语句实现循环结构程序设计及用break和continue语句提前结束循环的方法;第6章介绍数组的定义和初始化、数组元素的使用、数值数组元素的常用操作、字符数组的使用方法;第7章介绍函数的定义、被调函数的声明、函数的调用、数组作函数参数、变量的作用域和存储类别;第8章介绍宏定义、文件包含;第9章介绍结构体类型、共用体类型、枚举类型;第10章依次介绍指向变量的、指向数组的、指向函数的、指向指针的和指向结构体的指针变量及动态存储分配;第11章介绍文件的打开与关闭、文件的顺序读写和随机读写及文件检测函数;第12章介绍位运算符和位域;附录列出了全国计算机等级考试二级C语言程序设计考试大纲及模拟题。
《C语言程序设计》为2016年广西高等教育本科教学改革工程项目(2016JGB386)研究成果,由贺州学院梁海英博士和张红军主编,千文、陈科尹博士、孟伟东博士和曾霖博士副主编,全书由梁海英教授统稿。在《C语言程序设计》的编写过程中,得到了所在学院同事的热心帮助和支持,参加《C语言程序设计》编写工作的老师还有陈醒基、刘柯威、赵方珍、何顺、樊艳英、王珍珍、王雪红、任子亭、肖鸿、李剑维、张学茂、庄兴义、陶程仁、罗志林等。在此,向他们表示衷心的感谢!
《C语言程序设计》对应的电子课件、习题答案和实例源文件可以通过http://www.tupwk.com.cn/downpage网站下载。
书中难免存在不妥之处,敬请广大读者批评指正。我们的电话是010-62796045,电子邮箱是huchenhao@263.net。
编者
2018年1月
1854339001