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

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

书号:9787113288792 套系名称:“十三五”职业教育国家规划教材

作者:赵凤芝 包锋 李峰 出版日期:2022-04-01

定价:59.80 页码 / 开本: /16

策划编辑:王春霞 责任编辑:王春霞 徐盼欣

适用专业:计算机教材 适用层次:高等职业(专科)

最新印刷时间:2023-07-17

资源下载
教学课件 教学素材
习题答案 教学案例(暂无)
教学设计 教学视频(暂无)
内容简介 前言 目录 作者介绍 图书特色
  •       本书在前四版的基础上进行了优化并增加了微课内容的讲解。全书共分11章,内容包括:进入C语言程序世界、应用C的基础知识实现数据的运算与处理、应用顺序结构设计程序解决简单实际问题、应用选择结构设计程序实现分支判断、应用循环结构设计程序实现重复操作、应用数组设计程序实现批量数据处理、应用函数设计程序实现模块化设计、应用指针设计程序增加独有特色、自己定义数据类型完成复杂数据处理、应用文件管理数据、C程序设计项目实战。
    本书按照工学结合的CDIO工程理念,以打造“零基础”入门、突出实践应用能力为出发点,设计了独具特色的“案例驱动+项目实训”模式,通过大量实用性和趣味性应用实例,由浅入深地对C语言程序设计内容进行了全面讲述。
    本书适合作为高等院校、高等职业院校程序设计课程的教材,也可作为全国计算机等级考试各类计算机培训班的教材以及技能设计大赛和广大计算机爱好者的自学和参考用书。
    
  • C语言是目前世界上广为流行且使用广泛的高级程序设计语言。C语言结构简单、数据类型丰富,具有功能强大、使用灵活、速度快、效率高、可移植性好等诸多优点,从诞生至今一直受到全世界软件设计者的青睐:许多大型应用软件都是用C语言编写的;在操作系统、图形图像、数值计算、人工智能、嵌入式系统、智能家居、游戏引擎、云计算、物联网等多个领域,C语言都得到了广泛的应用;许多程序设计语言如Java、C#等都是在C语言的基础上发展起来的。C语言是各高校广泛开设的一门重要的计算机语言课程。全国计算机等级考试、职业资格认定、技能大赛等都将C语言列入了考查范围。学习和使用C语言已经成为广大计算机应用人员和学生们的迫切需求。
    不少C语言初学者迫切希望有一本实用性强、“零基础”入门的书籍,鉴于此,我们在多年从事一线实践教学和研究的基础上,总结经验和技巧,参考国内外有关资料,精心打造了本书。本书倾注了编者的大量心血,书中的每道例题、习题及每个环节都经过编者的精心设计、反复推敲;精心设计了全书的体系结构和内容,简化、分散难点,讲解分层进行、循序渐进,力求“零基础”入门。
    本书自第一版出版以来,深受广大读者的欢迎,先后多次改版重印。第一版是国家社会科学基金教育学科“十一五”规划课题研究成果;改编后出版的第二版被教育部高等学校高职高专计算机类教学指导委员会评为“优秀教材”;升级后的第三版获得了省级高等教育“优秀教学成果二等奖”;第四版在前三版的基础上进一步优化,增加了微课内容,形成了立体化教材,获得省级教材评选“二等奖”并进入“‘十三五’职业教育国家级规划教材”;本次改版在原有基础上将软件运行环境由VC++ 6.0升级为VC++ 2010;围绕课程目标,融入思政元素,强化育人理念;将每章的内容、习题和项目实训进行了优化;增加、丰富了微课视频,为使读者有一个工程软件开发、设计过程的体会,优化了最后一章的实际应用项目案例——“企业员工管理信息系统”。每章后面的项目实训都围绕这个实际项目内容,使读者循序渐进地学会软件项目设计。
    全书共分11章,内容包括:进入C语言程序世界、应用C的基础知识实现数据的运算与处理、应用顺序结构设计程序解决简单实际问题、应用选择结构设计程序实现分支判断、应用循环结构设计程序实现重复操作、应用数组设计程序实现批量数据处理、应用函数设计程序实现模块化设计、应用指针设计程序增加独有特色、自己定义数据类型完成复杂数据处理、应用文件管理数据、C程序设计项目实战。除第 11 章C程序设计项目实战外,每章包括“学习目标”“相关知识”“技能训练”“能力拓展”“小结”“习题”“项目实训”等环节。还增加了“举一反三”“再学一招”“编程技巧总结”等部分,将课程思政内容融入其中。
    本书特色:
    1.OBE理念的“工学结合”、CDIO工程模式——应用案例驱动&项目实训模式
    每一章目标明确,先通过比较简单实用的案例引出相关知识点,使读者感到学习C语言程序设计并不是一件难事,可以顺利学习并快速掌握相关内容。编写过程中,我们将工学结合的CDIO工程理念融入本书,采用成果导向,尽量把C语言从应试学习转变为实践应用工具,设计的案例尽量贴近生活或实际需要,以提高学习兴趣;每章配有“项目实训”,做到学以致用。
    2.“零基础入门”、微课助阵——内容生动灵活,实例丰富,好学易懂
    讲解用贴近读者熟悉的案例引领,由浅入深,从问题分析到算法设计,从程序代码编写到运行结果分析,对整个程序设计过程进行详细讲解,以帮助初学者提振信心、快速入门。本书提供了丰富的典型例题和真实项目,集趣味性和实用性于一体,使读者在轻松环境中掌握程序设计的能力;同时配有大量的微课讲解,使读者学起来更加轻松。
    3.“递进式”的讲解、独具特色——形式新颖,设计独特
    本书采用“递进式”的讲解方式将程序设计的思想和方法徐徐展开,以实例带动知识点的学习。每章典型学习模式为:简单实例讲解→相关知识点学习→技能训练→加深知识点学习→举一反三→灵活运用→能力拓展→知识点拓宽→综合实训→能力应用。由浅入深,循序渐进,重点突出,环环相扣。所列举的实例由易到难,部分实例给出一题多解,使读者既能快速直观地掌握必备的理论知识,又能很快掌握相关程序设计思想和逻辑思维方法。
    “举一反三”“再学一招”“能力拓展”可满足不同程度的读者的需要。每章的“项目实训”是对所学知识的一种检验,使读者对自己的掌握程度做到心中有数,为开发实际应用项目起到抛砖引玉的作用。
    4.遵照标准、知识学习的“高度凝练”——融入思政,“育人”润物细无声
    本书以国际标准C语言(ANSI C)的知识和结构为基本内容,结合作者多年的教学、科研经验,高度凝练知识点,每章通过简单案例囊括多个知识点学习,把常用的重点和易出现的问题提前进行提示和讲解,排除读者学习中的一些障碍,使读者学起来更有信心、更轻松。
    本书通俗易懂,实例丰富,形式新颖,目标明确,以应用为主,能力为纲,理论适度,实用性强,适合作为高等职业院校程序设计课程的教材,也可作为等级考试、各类培训班的教材及技能设计大赛和广大计算机爱好者的自学和参考用书。书中所有例题均在VC++ 2010学习版和VC++6.0中通过调试运行。
    本书配有课程大纲、源程序、电子教案和习题参考答案等教学资源,可从中国铁道出版社有限公司(网址为http://www.tdpress.com/51eds/)下载,或联系作者获取。另外,与本书配套的《C语言程序设计实训》(第2版)一书对应本书每章的知识点,提供了典型例题解析和大量实战训练题目,可迅速促进读者编程能力的提升。
    本书由赵凤芝、包锋、李峰任主编,王海英、郭杰锋、吴晶任副主编。具体编写分工如
    下:第1、5~7章由赵凤芝编写,9~11章由包锋编写,第2、4章由李峰编写,第8章及部分视频资料由王海英编写和整理,第3章、附录及部分实训题目、部分视频资料由
    郭杰锋、吴晶、刘志军编写和整理。在本书编写过程中得到了许多专家学者的指导,特别是得到了教育部职业教育专家邓泽民教授的亲自指导,在此深表感谢!吕晓昶、刘静、
    张国华等提供了相关资料,在此一并表示感谢!同时,对为本书出版给予关心、支持的相关人员表示诚挚的谢意!
    由于编者水平有限,书中疏漏和不足之处在所难免,敬请有关专家和广大读者不吝指正。编者的电子邮箱是qhdcomputer@163.com。
    
    
    编者
    2021年12月
    
    
  • 目录
    第1章进入C语言程序世界 1
    1.1初识C语言 2
    1.1.1第一个C程序 2
    1.1.2C程序的结构特点 3
    1.1.3规范书写C程序 3
    1.1.4C与C++ 5
    1.2设计简单的C程序 5
    1.3C程序的调试与运行 7
    1.3.1C程序的实现过程 7
    1.3.2在Visual C++ 6.0环境中实现C程序 8
    1.3.3在Visual C++ 2010 学习版环境中实现C程序 14
    1.4算法及算法的表示 20
    1.5计算机语言的发展 23
    1.6C语言的应用 24
    小结 25
    习题 25
    项目实训设计个人特色名片 27
    第2章应用C的基础知识实现数据的运算与处理 28
    2.1常量与变量 29
    2.2C语言的基本数据类型 31
    2.2.1整型数据 31
    2.2.2实型数据 32
    2.2.3字符型数据 35
    2.3C语言的运算符和表达式 38
    2.3.1算术运算符及其表达式 39
    2.3.2赋值运算符及其表达式 40
    2.3.3自增和自减运算符 41
    2.3.4强制类型转换运算符及其
                表达式 42
    2.3.5逗号运算符及其表达式 43
    2.3.6不同类型数据之间的混合
                运算 44
    小结 46
    习题 46
    项目实训设计产品超市智能计算器 49
    第3章应用顺序结构设计程序解决简单
                       实际问题 50
    3.1结构化程序设计的三种基本结构 50
    3.2数据的输入与输出 53
    3.2.1格式输出函数printf( ) 53
    3.2.2格式输入函数scanf( ) 56
    3.2.3单个字符输入/输出函数  
               (getchar( )/putchar( )) 58
    3.3顺序结构程序设计举例 60
    小结 63
    习题 63
    项目实训企业员工工资计算 66
    第4章应用选择结构设计程序实现分支
                       判断 67
    4.1选择结构程序设计简介 67
    4.2if语句的典型形式 69
    4.2.1简单if形式 69
    4.2.2标准if…else…形式 71
    4.2.3if…else if…形式 71
    4.3选择结构中常用的运算符和表达式 73
    4.3.1关系运算符及其表达式 74
    4.3.2逻辑运算符及其表达式 74
    4.3.3条件运算符及其表达式 77
    4.4嵌套if语句形式 78
    4.5switch语句的应用——评定学生成绩 80
    4.6选择结构程序设计应用实例 83
    4.6.1计算银行存款利息 83
    4.6.2智能体检电子秤 84
    4.6.3设计简易计算器 86
    小结 89
    习题 89
    项目实训企业员工奖金分配 92
    第5章应用循环结构设计程序实现重复
                       操作 94
    5.1为什么使用循环 95
    5.2while语句与do…while语句 97
    5.2.1while语句(当型循环) 97
    5.2.2do…while语句(直到型
               循环) 100
    5.3for语句实现循环 102
    5.4几种循环的比较 106
    5.5多重循环(嵌套循环) 107
    5.6break语句和continue语句 111
    5.6.1break语句 111
    5.6.2continue语句 113
    5.7循环结构程序设计举例 114
    5.7.1找最大值及求和 115
    5.7.2求阶乘的和 117
    5.7.3求素数 118
    小结 124
    习题 124
    项目实训企业员工技能大赛现场评分 128
    第6章应用数组设计程序实现批量数据
                        处理 130
    6.1数组的引入 130
    6.2一维数组及应用 133
    6.2.1一维数组的定义 133
    6.2.2一维数组的初始化 134
    6.2.3一维数组的引用 135
    6.3二维数组 137
    6.3.1二维数组的定义 137
    6.3.2二维数组的初始化 138
    6.3.3二维数组元素的引用 139
    6.3.4多维数组 140
    6.4字符数组 141
    6.4.1字符数组的定义 141
    6.4.2字符数组的初始化 142
    6.4.3字符数组的输入与输出 143
    6.4.4字符串(字符数组)处理
                函数 144
    6.5数组的应用 148
    6.5.1利用数组求Fibonacci数列的
                前n项 148
    6.5.2利用数组实现数据排序 150
    6.5.3利用数组处理批量数据 153
    6.5.4利用数组实现矩阵的转置 154
    6.5.5字符数组的应用 156
    小结 161
    习题 161
    项目实训企业员工系统的登录与工资
    统计 165
    第7章应用函数设计程序实现模块化
                       设计 167
    7.1函数的引入 168
    7.2函数的定义与调用 169
    7.2.1函数定义的一般形式 170
    7.2.2函数的参数和返回值 171
    7.2.3函数调用的一般方法 173
    7.2.4函数的声明 175
    7.3函数的嵌套调用和递归调用 176
    7.3.1函数的嵌套调用 176
    7.3.2函数的递归调用 177
    7.4函数应用实例 180
    7.4.1利用函数完成特定功能求值 181
    7.4.2利用函数求阶乘的和 181
    7.4.3数组作为函数参数 183
    7.5局部变量、全局变量及其存储 186
    7.5.1变量的作用域 186
    7.5.2变量的存储类别 188
    小结 194
    习题 194
    项目实训企业员工业绩评比 197
    第8章应用指针设计程序增加独有
                       特色 199
    8.1指针的概念 199
    8.1.1指针与地址的关系 199
    8.1.2变量的直接访问与间接访问 200
    8.2指针的基础应用 200
    8.2.1指针变量的定义、初始化
                与运算 201
    8.2.2应用指针对一维数组操作 203
    8.2.3应用指针处理字符串 205
    8.3指针的高级应用 207
    8.3.1指针变量作为函数的参数 207
    8.3.2返回指针的函数定义与使用 208
    8.3.3指向函数的指针 209
    8.3.4应用指针处理二维数组 210
    8.3.5指针数组 212
    8.3.6多重指针 214
    小结 219
    习题 220
    项目实训企业员工考勤系统 223
    第9章自己定义数据类型完成复杂数据
                        处理 225
    9.1结构体类型及其变量的定义 226
    9.1.1结构体类型的定义 227
    9.1.2结构体类型变量的定义 228
    9.2结构体变量的使用 230
    9.2.1结构体类型成员的引用 230
    9.2.2结构体类型变量的赋值 231
    9.3结构体数组的应用 232
    9.3.1结构体数组的应用概述 233
    9.3.2应用指针处理结构体数组 234
    9.4结构体变量作为函数参数 235
    9.5结构体应用——链表 237
    9.5.1动态链表概述 237
    9.5.2用尾插法创建链表 238
    9.5.3链表的输出 240
    9.6共同体类型 240
    9.6.1共同体类型的定义 241
    9.6.2共同体类型变量的定义引用 242
    9.6.3共同体类型的特点 242
    9.7枚举类型 243
    9.8用typedef定义类型 244
    9.8.1定义已有类型的别名 244
    9.8.2定义构造类型的别名 245
    9.8.3typedef的应用 245
    小结 253
    习题 254
    项目实训企业员工档案管理
                       及信息查询 256
    第10章应用文件管理数据 258
    10.1文件概述 258
    10.1.1文件的概念 258
    10.1.2文件的指针 260
    10.1.3文件的一般操作过程 260
    10.2对文件进行操作 261
    10.2.1文件的打开/关闭 261
    10.2.2文件的基本读/写操作 263
    10.2.3文件的格式化读/写 265
    10.2.4文件的数据块读/写 267
    10.2.5文件的定位 267
    10.2.6文件的检错与处理函数 269
    10.3文件的应用 269
    小结 273
    习题 273
    项目实训企业信息管理与保存 275
    第11章C程序设计项目实战 276
    11.1企业员工管理信息系统开发思路 276
    11.2企业员工管理信息系统的设计
               与实现 277
    小结 289
    综合自测题 289
    综合自测题参考答案 293
    
    附录A常用字符与ASCII码对照 295
    附录BC语言的关键字 296
    附录C运算符的优先级和结合性 297
    附录D编译预处理命令 298
    附录E位运算 303
    附录FC语言常见库函数 306
  • 赵凤芝,女,东北石油大学教授,硕士研究生导师。中国计算机学会高级会员,任黑龙江省第一届高职高专计算机类教学专家指导委员会副主任,省计算机等级考试命题组成员。秦皇岛市IT项目评审组专家,秦皇岛市政协委员,海港区第十三、十四届人大代表。现任东北石油大学(秦皇岛分校)计算机科学系主任。在信息处理与软件集成、数据库应用与网络、虚拟现实与人工智能等方面指导硕士研究生。包锋,男,中共党员,硕士,教授。中国计算机学会高级会员,现任东北石油大学(秦皇岛分校)计算机中心主任,秦皇岛IT项目评审组专家。李峰,男,汉族,副教授,硕士研究生,研究方向是计算机应用与教育技术。2004年本科毕业于大庆石油学院计算机系,2012年毕业于东北石油大学计算机与信息技术学院,获硕士学位,现工作于东北石油大学秦皇岛校区计算机中心,曾授予“优秀教师”、“优秀共产党员”称号。先后作为骨干参加了国家“863”、“十一五规划”、“十二五规划”、“十三五规划”等科研项目10余项。其中国家级课题1项,部级课题4项,其余为局级项目。在国内外公开发表本专业学术论文10余篇,其中EI检索4篇,统计源2篇。参与编写著作3部,专利3项。多次参加有关高校教育方面的国内会议,并发表过相关若干篇文章。获省优秀教学成果二等奖奖4项,三等奖2项。
  • 本书适合作为高等院校、高等职业院校程序设计课程的教材,也可作为全国计算机等级考试各类计算机培训班的教材以及技能设计大赛和广大计算机爱好者的自学和参考用书。