计算机类教材 > 算法与程序设计

C语言程序设计能力教程(第2版)

书号:9787113275907 套系名称:普通高等院校计算机基础教育“十四五”规划教材

作者:柏万里 出版日期:2021-04-01

定价:49.00 页码 / 开本:无 /16

策划编辑:刘丽丽 责任编辑:刘丽丽 李学敏

适用专业:计算机教材 适用层次:本科,高职高专

最新印刷时间:2022-02-21

资源下载
教学课件(暂无) 教学素材(暂无)
习题答案(暂无) 教学案例(暂无)
教学设计(暂无) 教学视频(暂无)
内容简介 前言 目录 作者介绍 图书特色
  • C语言是一种具有极强生命力的计算机高级程序设计语言,它是根据结构化程序设计原则设计并实现的。C语言同时具有高级语言和低级语言的特点,所以,它不仅适合于应用程序设计,而且适合于系统程序设计。
    
    C语言是大学计算机专业数据结构、操作系统课程的前导课程,也可作为学习其他计算机语言的基础,是计算机等级考试(二级)的内容之一。因此,选择C语言作为计算机基础课程的教学内容,适合当前形势发展的需要。
    
    本书根据高等职业院校计算机类专业C语言程序设计教学大纲,并参照江西省计算机等级考试二级C语言考试大纲,由具有多年C语言程序设计教学经验的一线教师和专家,根据实践教学和应用研究体会编写而成。在编写过程中,遵循了知识讲授和能力训练并重的原则。在讲清楚基本知识的基础上,注重例题的选择,每个知识点基本上做到先用基本例题讲解,然后再用实际应用例题讲解。
    
    本书是江西省精品课程“C语言程序设计”配套教材,全书采用了问题驱动形式,按照目标、问题、能力、方法、扩展、结论几个步骤,由浅入深、循序渐进地介绍了C语言的语法结构和使用,系统地讲述了C语言程序设计的基本方法和技巧。全书共分16章,前13章为C语言的基本知识和程序设计方法;第14章为C语言图形功能,作为C语言课程设计基础知识,为计算机专业学生的选修内容;第15章是常见错误与程序调试,提供了初学者在学习过程中常见的错误及程序的调试方法;第16章是C++简介,使读者对C++有初步了解,为今后学习C++打下基础。
    
    本书所有例题在Turbo C 2.0环境下调试通过。C语言程序设计实践性要求很强,希望读者在学习过程重视上机调试,不要满足于掌握理论知识。
    
    为帮助读者学习本书,我们同时编写了一本《C语言程序设计能力教程实训指导与习题解答》(第2版),提供了实验参考程序及本书中各章习题的参考答案,由中国铁道出版社有限公司出版与本书同期出版。
    
    本书由“C语言程序设计”省级精品课程负责人、江西航空职业技术学院柏万里教授编著,负责全书的统稿、审稿和定稿;精品课程教学团队成员、江西航空职业技术学院吴昂、李红霞、侯梦雅、吴铬、王娟老师参与了此书的编写。
    
    本书编写过程得到了江西航空职业技术学院领导曾谊辉教授、周延副教授的大力支持,“C语言程序设计”省级精品课程教学团队其他成员易丽萍、封园鹏、杨敏老师对本书的编写提出了许多宝贵意见。在此向他们一并表示感谢!本书编写过程中,参考了国内外同类教材,在此对这些教材的作者表示感谢!
    
    由于编者水平有限,加之时间仓促,书中疏漏和不足之处在所难免,敬请专家和读者不吝指正。
    
    编 者   
    
    2020年11月
    
    ?
  • C语言是一种具有极强生命力的计算机高级程序设计语言,它是根据结构化程序设计原则设计并实现的。C语言同时具有高级语言和低级语言的特点,所以,它不仅适合于应用程序设计,而且适合于系统程序设计。
    
    C语言是大学计算机专业数据结构、操作系统课程的前导课程,也可作为学习其他计算机语言的基础,是计算机等级考试(二级)的内容之一。因此,选择C语言作为计算机基础课程的教学内容,适合当前形势发展的需要。
    
    本书根据高等职业院校计算机类专业C语言程序设计教学大纲,并参照江西省计算机等级考试二级C语言考试大纲,由具有多年C语言程序设计教学经验的一线教师和专家,根据实践教学和应用研究体会编写而成。在编写过程中,遵循了知识讲授和能力训练并重的原则。在讲清楚基本知识的基础上,注重例题的选择,每个知识点基本上做到先用基本例题讲解,然后再用实际应用例题讲解。
    
    本书是江西省精品课程“C语言程序设计”配套教材,全书采用了问题驱动形式,按照目标、问题、能力、方法、扩展、结论几个步骤,由浅入深、循序渐进地介绍了C语言的语法结构和使用,系统地讲述了C语言程序设计的基本方法和技巧。全书共分16章,前13章为C语言的基本知识和程序设计方法;第14章为C语言图形功能,作为C语言课程设计基础知识,为计算机专业学生的选修内容;第15章是常见错误与程序调试,提供了初学者在学习过程中常见的错误及程序的调试方法;第16章是C++简介,使读者对C++有初步了解,为今后学习C++打下基础。
    
    本书所有例题在Turbo C 2.0环境下调试通过。C语言程序设计实践性要求很强,希望读者在学习过程重视上机调试,不要满足于掌握理论知识。
    
    为帮助读者学习本书,我们同时编写了一本《C语言程序设计能力教程实训指导与习题解答》(第2版),提供了实验参考程序及本书中各章习题的参考答案,由中国铁道出版社有限公司出版与本书同期出版。
    
    本书由“C语言程序设计”省级精品课程负责人、江西航空职业技术学院柏万里教授编著,负责全书的统稿、审稿和定稿;精品课程教学团队成员、江西航空职业技术学院吴昂、李红霞、侯梦雅、吴铬、王娟老师参与了此书的编写。
    
    本书编写过程得到了江西航空职业技术学院领导曾谊辉教授、周延副教授的大力支持,“C语言程序设计”省级精品课程教学团队其他成员易丽萍、封园鹏、杨敏老师对本书的编写提出了许多宝贵意见。在此向他们一并表示感谢!本书编写过程中,参考了国内外同类教材,在此对这些教材的作者表示感谢!
    
    由于编者水平有限,加之时间仓促,书中疏漏和不足之处在所难免,敬请专家和读者不吝指正。
    
    编 者   
    
    2020年11月
    
    ?
  • 第1章  C语言概述 1
    1.1  熟悉C语言程序结构
    和书写格式 1
    1.2  C语言程序的上机步骤 4
    1.2.1  Turbo C集成开发
    环境介绍 4
    1.2.2  C语言程序的上机
    调试步骤 5
    知识扩展 6
    小结 15
    习题 16
    第2章  C语言的编程元素 18
    2.1  C语言的基本语法单位 18
    2.1.1  字符集 18
    2.1.2  标识符 18
    2.1.3  关键字 19
    2.1.4  分隔符 19
    2.2  常量与变量 19
    2.2.1  常量和符号常量 19
    2.2.2  变量 20
    2.3  C语言的数据类型 21
    2.4  整型数据 22
    2.4.1  整型常量 22
    2.4.2  整型变量 22
    2.4.3  如何输入整型数据 23
    2.4.4  如何输出整型数据 24
    2.5  实型数据 25
    2.5.1  实型常量 25
    2.5.2  实型变量 26
    2.5.3  如何输入实型数据 26
    2.5.4  如何输出实型数据 27
    2.6  字符型数据 28
    2.6.1  字符型常量 28
    2.6.2  字符型变量 30
    2.6.3  如何输入字符型数据 30
    2.6.4  如何输出字符型数据 31
    2.7  字符串常量 32
    知识扩展 33
    小结 33
    习题 33
    第3章  C语言程序提供的运算 36
    3.1  运算符及表达式 36
    3.2  算术运算 37
    3.2.1  算术运算符 37
    3.2.2  算术表达式 38
    3.3  关系运算 39
    3.3.1  关系运算符 39
    3.3.2  关系表达式 40
    3.4  逻辑运算 41
    3.4.1  逻辑运算符 41
    3.4.2  逻辑表达式 42
    3.5  赋值运算 43
    3.5.1  赋值运算符 43
    3.5.2  赋值表达式 43
    3.6  其他运算 44
    3.6.1  条件运算符和条件表达式 44
    3.6.2  逗号运算符和逗号表达式 45
    3.7  各类数值型数据间的混合运算 45
    3.8  类型转换 46
    3.8.1  类型的隐含转换 46
    3.8.2  类型的强制转换 46
    小结 47
    习题 48
    第4章  顺序结构程序设计 51
    4.1  C语言程序结构 51
    4.1.1  C语言三种基本结构 51
    4.1.2  C语言语句分类 52
    4.2  顺序结构程序设计 53
    小结 55
    习题 56
    第5章  选择结构程序设计 58
    5.1  if语句 58
    5.1.1  if语句的三种形式 58
    5.1.2  if语句的嵌套 62
    5.1.3  条件运算符与if
    语句的关系 64
    5.2  switch语句 65
    5.3  选择结构程序设计程序举例 67
    小结 70
    习题 70
    第6章  循环结构程序设计 74
    6.1  认识循环结构 74
    6.2  goto语句以及用goto语句
    构成循环 75
    6.3  while语句 75
    6.3.1  while语句的语法 75
    6.3.2  使用while语句需要
    注意的问题 76
    6.4  do…while语句 77
    6.4.1  do…while语句的语法 77
    6.4.2  使用do…while语句需要
    注意的问题 78
    6.5  for语句 79
    6.5.1  for语句的语法 79
    6.5.2  使用for语句需要
    注意的问题 80
    6.6  循环的嵌套 81
    6.7  几种循环的比较 83
    6.8  break语句和continue语句 84
    6.8.1  break语句 84
    6.8.2  continue语句 85
    6.9  循环结构程序设计程序举例 86
    小结 88
    习题 89
    第7章  数组 93
    7.1  数组的引入 93
    7.2  一维数组的定义和引用 94
    7.2.1  一维数组的定义 94
    7.2.2  一维数组元素的引用 95
    7.2.3  一维数组的初始化 96
    7.2.4  一维数组程序举例 97
    7.3  二维数组的定义和引用 99
    7.3.1  二维数组的定义 99
    7.3.2  二维数组的引用 100
    7.3.3  二维数组的初始化 100
    7.3.4  二维数组程序举例 101
    7.4  字符数组 103
    7.4.1  字符数组的定义 103
    7.4.2  字符数组的引用 103
    7.4.3  字符数组的初始化 103
    7.4.4  字符串和字符串结束标志 104
    7.4.5  字符串处理函数 105
    7.4.6  字符数组的输入/输出
    比较 108
    7.5  字符数组应用举例 109
    知识扩展 111
    小结 112
    习题 112
    第8章  函数 119
    8.1  用户自定义函数的引入 119
    8.2  函数的定义 120
    8.3  函数的说明 122
    8.4  函数的调用 123
    8.4.1  函数的调用形式 123
    8.4.2  函数的调用方式 124
    8.4.3  函数调用的规则 126
    8.4.4  嵌套调用 126
    8.4.5  递归调用 127
    8.5  数组作为函数的参数 130
    8.5.1  数组元素作为实参 130
    8.5.2  数组名作为函数参数 130
    8.6  局部变量和全局变量 132
    8.6.1  局部变量 132
    8.6.2  全局变量 133
    8.7  变量的存储类型 135
    8.7.1  静态存储方式与动态
    存储方式 135
    8.7.2  自动变量 135
    8.7.3  静态局部变量 137
    8.7.4  寄存器变量 138
    8.7.5  外部变量 139
    8.7.6  静态全局变量 140
    8.8  内部函数和外部函数 140
    8.8.1  内部函数 140
    8.8.2  外部函数 140
    8.9  函数应用程序设计举例 141
    知识扩展 143
    小结 144
    习题 145
    第9章  预处理命令 150
    9.1  宏定义 150
    9.1.1  不带参数的宏定义 150
    9.1.2  带参数的宏定义 152
    9.2 “文件包含”处理 153
    9.3  条件编译 154
    9.4  应用举例 155
    知识扩展 156
    小结 157
    习题 157
    第10章  指针 161
    10.1  指针的基本概念 161
    10.1.1  内存单元与内存单元的地址 161
    10.1.2  内存单元的指针和内存单元的内容 162
    10.1.3  指针和指针变量 162
    10.2  指针变量的定义与运算 162
    10.2.1  指针变量的定义 163
    10.2.2  指针变量的指向和初始化 163
    10.2.3  指针变量的引用 164
    10.2.4  指针变量的运算 165
    10.3  指针在函数参数传递中的应用 167
    10.4  指针与数组 169
    10.4.1  指针与一维数组 169
    10.4.2  通过指针引用一维数组元素 170
    10.4.3  数组名及指针作函数参数 172
    10.4.4  指向二维数组的指针和指针变量 177
    10.5  指针与字符串 180
    10.5.1  字符串的表示形式 180
    10.5.2  使用字符串指针变量与字符数组的区别 183
    10.6  指针数组 183
    10.6.1  指针数组的概念 183
    10.6.2  指针数组应用举例 185
    10.6.3  指针数组在带形参的main函数中的应用 186
    10.7  指针与函数 187
    10.8  指针型函数 188
    10.9  多重指针 189
    知识扩展 191
    小结 191
    习题 192
    第11章  结构体、共用体和枚举数据类型 196
    11.1  结构体 196
    11.1.1  结构体类型的定义 197
    11.1.2  结构体变量的定义 197
    11.1.3  结构体变量成员的引用 198
    11.1.4  结构体变量的初始化 199
    11.2  结构体数组 200
    11.2.1  定义结构体数组 200
    11.2.2  结构体数组的初始化 201
    11.2.3  结构体数组应用举例 201
    11.3  指向结构体类型数据的指针 203
    11.3.1  指向结构体变量的指针 203
    11.3.2  指向结构体数组的指针 205
    11.4  共用体 205
    11.4.1  共用体类型的定义 206
    11.4.2  共用体变量的定义 206
    11.4.3  共用体成员的引用 207
    11.5  枚举类型 209
    11.5.1  枚举类型的定义 209
    11.5.2  枚举变量的定义 209
    11.5.3  枚举变量的赋值和使用 210
    知识扩展 211
    小结 218
    习题 218
    第12章  位运算 222
    12.1  位运算符和位运算 222
    12.1.1  按位与运算 223
    12.1.2  按位或运算 223
    12.1.3  异或运算 224
    12.1.4  取反运算 225
    12.1.5  左移运算 226
    12.1.6  右移运算 226
    12.1.7  位运算复合赋值运算 226
    12.1.8  不同长度数据的位运算 226
    12.2  位运算举例 226
    小结 228
    习题 228
    第13章  文件 231
    13.1  文件类型指针 231
    13.2  文件的打开与关闭 232
    13.2.1  文件的打开(fopen函数) 232
    13.2.2  文件的关闭
    (fclose函数) 233
    13.3  文件的读/写 233
    13.3.1  fgetc函数和fputc函数 234
    13.3.2  fgets函数和fputs函数 237
    13.3.3  fread函数和fwrite函数 238
    13.3.4  fprintf函数和fscanf函数 240
    13.4  文件的定位 241
    13.4.1  rewind函数 241
    13.4.2  fseek函数 241
    13.5  文件检测函数 242
    知识扩展 243
    小结 244
    习题 244
    第14章  C语言图形功能 247
    14.1  图形模式的初始化 247
    14.2  独立图形运行程序的建立 249
    14.3  屏幕颜色的设置和清屏函数 250
    14.4  基本画图函数 252
    14.4.1  画点 252
    14.4.2  画线 252
    14.5  基本图形的填充 255
    14.5.1  基本图形的填充 255
    14.5.2  设定填充方式 255
    14.5.3  任意封闭图形的填充 257
    14.6  图形操作函数 258
    14.6.1  图形窗口操作 258
    14.6.2  屏幕操作函数 258
    14.7  图形模式下的文本操作 260
    14.7.1  文本的输出 260
    14.7.2  文本字体、字形和输出方式的设置 260
    14.7.3  用户对文本字符大小的设置 262
    小结 263
    习题 263
    第15章  常见错误与程序调试 264
    15.1  常见错误分析 264
    15.2  程序调试 274
    小结 277
    习题 277
    第16章  C++简介 280
    16.1  C++与面向对象程序设计 280
    16.2  类的说明 280
    16.3  对象的说明 282
    16.4  继承性 283
    16.5  多态性 284
    小结 285
    习题 285
    附 录 A  ASCII码与字符对照表 286
    附 录 B  运算符的优先级和结合性 288
    参考文献 290
    ?
  • 柏万里,男,教授,现就职于江西航空职业技术学院电子与信息工程系,江西省高等学校教学名师,江西省高等学校中青年骨干教师,江西省高等学校教育教学专家库成员。从事计算机专业教育二十余年,省级精品课程《计算机应用基础》、《C语言程序设计》负责人,主持二项省级教改课题,论著《C语言程序设计》等9本书在国家级出版社出版,《飞机装配指令管理系统分析方法的研究》等5篇论文在省级以上刊物发表。目前主要从事高级语言程序设计、数据库技术、WEB技术等计算机专业教学及研究工作。?