《C语言程序设计教程》(第二版)是“十二五”职业教育国家规划教材,也是新世纪高职高专教材编审委员会组编的计算机应用技术专业系列规划教材之一。
本教材主要是以C语言程序设计零基础的读者为对象编写的。全书贯穿使用函数,内容编排独特,组织形式新颖,运用“项目引导”理念,使读者更容易理解C语言的知识结构,掌握C语言的综合应用。本教材既可作为高等学校C语言程序设计课程的教材,又可作为读者自学的辅助用书。
本教材组织特色:用函数贯穿全书,每个实例都是用函数来实现的。每个项目都是一个完整的项目,设定了明确的项目目标,对项目进行分析和设计,再引出项目所需要的准备知识,层层分解,符合读者的认知规律。本教材从无参数无返回值函数入手,帮助学生了解函数的概念;再到带参数有返回值的函数的运用,逐渐提升读者对函数的应用能力。
本教材内容由10个项目构成:项目1~5为“C语言程序设计基础”,通过“项目引导”,讲授了C语言的基本语法和数据类型以及结构化程序设计的三种结构,将无参数无返回值函数的应用渗入其中,最终完成一个简单的计算器项目。项目6进一步讲授了带参数函数的应用,并将计算器项目用带参数函数来实现。项目7为C语言知识的拓展和运用,主要讲授了一维数组和字符串的使用、二维数组的简单应用。该项目用一个简单的成绩管理系统贯穿全部内容,将数组的常用操作与实际需要结合起来,更易于理解。项目8采用指针,改写项目7的各功能。项目9利用结构体和队列,模拟了简单的排队系统。项目10是在项目7的基础上,增加了文件存储功能。
本教材配有微课、教学课件、教学大纲、源代码等配套资源,另外还附有C语言的关键字、C语言常用库函数等扩展内容,方便读者查阅。
在编写本教材的过程中,编者参考、引用和改编了国内外出版物中的相关资料以及网络资源,在此表示深深的谢意!相关著作权人看到本教材后,请与出版社联系,出版社将按照相关法律的规定支付稿酬。
由于编者水平有限,书中难免会存在疏漏和错误,欢迎读者批评和指正。
编 者
2021年3月
项目1 认识C程序 / 1
1.1 简单C程序 / 1
1.2 知识概述 / 3
1.2.1 计算机语言 / 3
1.2.2 C语言的发展与特点 / 3
1.2.3 C程序的基本结构 / 4
1.2.4 输入/输出函数简单介绍 / 4
1.2.5 C语言的词汇 / 5
1.2.6 C程序的开发过程 / 6
1.2.7 Visual C++ 6.0集成开发环境简介 / 7
1.3 项目小结 / 13
习题1 / 14
项目2 数据信息描述 / 16
2.1 C语言的数据类型 / 16
2.1.1 C语言的基本数据类型 / 16
2.1.2 基本数据类型的修饰 / 17
2.2 常量及其类型 / 17
2.2.1 整型常量 / 17
2.2.2 实型常量 / 18
2.2.3 字符型常量 / 19
2.2.4 字符串常量 / 20
2.2.5 符号常量 / 21
2.3 变量及其类型 / 22
2.3.1 变量及其定义 / 22
2.3.2 整型变量 / 23
2.3.3 实型变量 / 24
2.3.4 字符型变量 / 25
2.4 运算符与表达式 / 26
2.4.1 运算符及运算对象 / 26
2.4.2 表达式 / 27
2.4.3 算术运算符与算术表达式 / 28
2.4.4 关系运算符与关系表达式 / 31
2.4.5 逻辑运算符与逻辑表达式 / 33
2.5 特殊运算符与表达式 / 34
2.5.1 逗号运算符和逗号表达式 / 34
2.5.2 条件运算符与条件表达式 / 35
2.5.3 长度(求字节)运算符 / 36
2.5.4 赋值运算符与赋值表达式 / 38
2.5.5 数据之间的混合运算 / 38
2.6 项目小结 / 40
习题2 / 41
项目3 简单计算器的设计 / 44
3.1 项目目标 / 44
3.2 项目分析与设计 / 44
3.2.1 计算器功能分析 / 44
3.2.2 计算器功能细化 / 45
3.2.3 计算器函数原型设计 / 45
3.3 知识准备 / 46
3.3.1 C程序语句 / 46
3.3.2 算法及算法描述 / 47
3.3.3 数据的输出 / 49
3.3.4 数据的输入 / 54
3.4 项目实现 / 57
3.4.1 显示菜单功能的实现 / 57
3.4.2 加法、减法和乘法功能的实现 / 58
3.5 项目小结 / 59
习题3 / 60
项目4 完善计算器的设计 / 64
4.1 项目目标 / 64
4.2 项目分析与设计 / 64
4.2.1 除法功能的设计 / 64
4.2.2 求余功能的设计 / 65
4.3 知识准备 / 65
4.3.1 单分支结构 / 65
4.3.2 双分支结构 / 67
4.3.3 多分支结构 / 68
4.3.4 应用举例 / 75
4.4 项目实现 / 78
4.4.1 除法功能的实现 / 78
4.4.2 求余功能的实现 / 78
4.4.3 主函数功能的实现 / 79
4.5 项目小结 / 79
习题4 / 80
项目5 进一步完善计算器的设计 / 86
5.1 项目目标 / 86
5.2 项目分析与设计 / 86
5.2.1 计算器程序的完整流程图 / 86
5.2.2 累加功能的设计 / 86
5.2.3 阶乘功能的设计 / 88
5.3 知识准备 / 89
5.3.1 while语句 / 89
5.3.2 for语句 / 94
5.3.3 do...while语句 / 97
5.3.4 循环辅助控制语句 / 99
5.3.5 循环嵌套 / 102
5.3.6 几种循环的比较 / 103
5.3.7 应用举例 / 104
5.4 项目实现 / 106
5.4.1 累加求和功能的实现 / 106
5.4.2 阶乘功能的实现 / 106
5.4.3 主函数功能的实现 / 107
5.5 项目小结 / 107
习题5 / 108
项目6 计算器高级版本的设计 / 114
6.1 项目目标 / 114
6.2 项目分析与设计 / 114
6.2.1 低版本计算器回顾 / 114
6.2.2 高级版本计算器的功能分析 / 114
6.2.3 高级版本计算器函数原型设计 / 115
6.3 知识准备 / 118
6.3.1 函数定义和返回值 / 118
6.3.2 函数的调用 / 119
6.3.3 函数原型声明 / 119
6.3.4 函数举例 / 120
6.3.5 递归函数 / 124
6.3.6 变量的作用域和存储类别 / 128
6.4 项目实现 / 132
6.4.1 典型函数功能的实现 / 132
6.4.2 计算器高级版本的部分实现 / 134
6.5 项目小结 / 136
习题6 / 137
项目7 简单成绩管理系统的设计 / 142
7.1 项目目标 / 142
7.2 一维数组引例 / 142
7.3 项目分析与设计 / 143
7.3.1 简单成绩管理系统功能分析 / 143
7.3.2 系统主函数的流程 / 144
7.3.3 函数功能分析与原型设计 / 144
7.4 知识准备 / 146
7.4.1 一维数组 / 146
7.4.2 字符串 / 162
7.4.3 二维数组 / 169
7.5 项目实现 / 182
7.5.1 主函数代码实现 / 182
7.5.2 输入成绩功能的实现 / 184
7.5.3 输出成绩功能的实现 / 184
7.5.4 查询成绩功能的实现 / 185
7.5.5 成绩排序功能的实现 / 186
7.5.6 登录功能的实现 / 186
7.6 项目小结 / 187
习题7 / 187
项目8 改写简单成绩管理系统 / 189
8.1 项目目标 / 189
8.2 项目分析与设计 / 189
8.2.1 扩充功能分析 / 190
8.2.2 函数原型设计 / 190
8.3 知识准备 / 190
8.3.1 指针概念及引用 / 190
8.3.2 指针做函数参数 / 193
8.3.3 指针与一维数组 / 195
8.3.4 指针与字符串 / 200
8.3.5 指针提高 / 207
8.4 项目实现 / 220
8.4.1 主函数代码实现 / 220
8.4.2 新增功能的实现 / 222
8.5 项目小结 / 224
习题8 / 225
项目9 排队系统的设计 / 227
9.1 项目目标 / 227
9.2 项目分析与设计 / 227
9.2.1 主函数流程分析 / 227
9.2.2 功能函数的原型声明 / 228
9.3 知识准备 / 228
9.3.1 结构体 / 229
9.3.2 结构与指针 / 237
9.4 项目实现 / 245
9.4.1 主菜单功能的实现 / 245
9.4.2 新来顾客排队功能的实现 / 246
9.4.3 售票功能的实现 / 247
9.4.4 公告排队人数功能的实现 / 248
9.5 项目小结 / 249
习题9 / 249
项目10 扩展学生成绩管理系统 / 252
10.1 项目目标 / 252
10.2 项目分析与设计 / 252
10.2.1 新增功能分析 / 252
10.2.2 函数原型设计 / 252
10.3 知识准备 / 253
10.3.1 文件的概念 / 253
10.3.2 文件的打开和关闭 / 254
10.3.3 字符读写函数:fgetc和fputc / 254
10.3.4 字符串读写函数:fgets和fputs / 256
10.3.5 格式化读写函数:fscanf和fprintf / 257
10.3.6 二进制读写函数:fread和fwrite / 258
10.3.7 fgets与gets、fputs与puts函数比较 / 260
10.4 项目实现 / 261
10.5 项目小结 / 262
习题10 / 262
参考文献 / 263
附录 / 264
附录A ASCII码表 / 264
附录B C语言运算符的优先级和结合性 / 265
-
课件《C语言程序设计教程》(第二版)
课程: C语言程序设计 类型: zip 大小:79.53 MB上传时间: 2022-08-11 17:16:48
-
C常用算法程序集《C语言程序设计教程》(第二版)
课程: C语言程序设计 类型: rar 大小:239.35 KB上传时间: 2022-08-11 17:16:48
-
C语言类库及使用方法《C语言程序设计教程》(第二版)
课程: C语言程序设计 类型: rar 大小:52.61 KB上传时间: 2022-08-11 17:16:48
-
大纲、编码规范、附录及补充内容《C语言程序设计教程》(第二版)
课程: C语言程序设计 类型: rar 大小:1.46 MB上传时间: 2022-08-11 17:16:49
-
经典C程序100例《C语言程序设计教程》(第二版)
课程: C语言程序设计 类型: rar 大小:52.65 KB上传时间: 2022-08-11 17:16:49
-
视频《C语言程序设计教程》(第二版)
课程: C语言程序设计 类型: rar 大小:97.37 MB上传时间: 2022-08-11 17:16:49
-
源代码《C语言程序设计教程》(第二版)
课程: C语言程序设计 类型: rar 大小:3.54 MB上传时间: 2022-08-11 17:16:49
-
课后习题参考答案《C语言程序设计教程》(第二版)
课程: C语言程序设计 类型: docx 大小:80.07 KB上传时间: 2022-08-11 17:17:08
全部下载