新書推薦:
《
宠物革命:动物与现代英国生活的形成
》
售價:NT$
360.0
《
(棱镜精装人文译丛)蔑视大众:现代社会文化斗争的实验
》
售價:NT$
275.0
《
皇家宫廷中的保健秘方 中小学课外阅读
》
售價:NT$
290.0
《
《诗经》十五讲 十五堂《诗经》历史文化与文学课 丹曾人文通识丛书
》
售價:NT$
395.0
《
述异记汇笺及情节单元分类研究(上下册)
》
售價:NT$
475.0
《
环境、社会、治理(ESG)信息披露操作手册
》
售價:NT$
1190.0
《
桑德拉销售原则 伍杰 [美]大卫·马特森
》
售價:NT$
440.0
《
理论的意义
》
售價:NT$
340.0
|
編輯推薦: |
1、坚持立德树人的根本任务,将课程思政内容有效融入教材中,在学生看书过程中潜移默化培养学生规则意识和职业规范、精益求精的工匠精神和高尚的爱国情怀。
2、以工程教育专业证核心理念为指引,以问题驱动的方式安排章节内容,从程序结构开始,以递进方式式提升学生计算思维和程序设计能力。
3、整本教材,围绕计算思维和程序设计能力培养,淡化程序设计语言要素,注重学生思维方式的转变和计算思维的养成。习题的设计以趣味性和挑战性为主,在训练量的基础上,注重算法的设计与实现,注重算法在具体问题解决方案中的应用,提升学生应用知识解决实际问题的能力、程序设计能力和开发平台的应用能力。
|
內容簡介: |
《高级语言程序设计(微课版)》着眼于计算思维和程序设计能力的培养,以问题驱动方式逐步建构学生的基本程序设计知识体系和能力体系,提高学生的模型建立与编程实现能力,促进成果导向的课程目标达成。全书分为8章,包括绪论、程序设计基础、函数、数组、指针、结构体及其应用、文件操作和综合应用。《高级语言程序设计(微课版)》大部分章节以问题为导引,在分析解决问题的过程中逐步引出知识点,形成符合学生学习规律和习惯的较为清晰的思路和知识主线,在知识讲解与阐述过程中,忽略烦琐的语法要素,注重学生计算思维和程序设计能力的培养与训练。 《高级语言程序设计(微课版)》提供了配套的PPT、习题和符合工程认证的教学大纲,既可作为信息类专业和其他理工科专业C语言程序设计课程的教材,也可作为计算机等级考试和自学人员的参考书。
|
關於作者: |
李益才,重庆交通大学信息科学与工程学院副院长,副教授,工学硕士,CCF会员,西部高等院校电气信息类专业课程建设专家委员会委员,信息技术新工科产学研联盟产学研对接工作委员会专家委员。《高级语言程序设计》重庆市级一流课程负责人,《面向对象程序设计A》课程思政校级示范项目负责人。获重庆市2021教学成果三等奖,重庆交通大学第五届教学成果一等奖,重庆交通大学第六届教学成果特等奖、二等奖。主持 产学合作协同育人项目2项,主持或主研教育教学改革项目5项。主讲课程《高级语言程序设计》、《面向对象程序设计》、《计算思维综合实践I》、《计算思维综合实践II》、《程序设计综合实践》等课程。指导学生参加蓝桥杯全国软件和信息技术人才大赛获国家级二等奖2人次、三等奖6人次,指导学生参加大唐杯全国5G移动通信技术大赛获国家级一等奖1项,二等奖1项。
|
目錄:
|
第1章 绪论 1
1.1 最简单的程序 1
1.2 程序与计算机语言 3
1.2.1 程序 3
1.2.2 程序设计 5
1.2.3 程序设计语言 5
1.3 算法及其表示 6
1.3.1 算法概念 6
1.3.2 流程图 6
1.4 补充阅读材料 7
1.4.1 计算机的产生与发展 7
1.4.2 计算机组成与工作原理 9
习题 11
第2章 程序设计基础 12
2.1 顺序结构程序设计 12
2.1.1 求梯形的面积 12
2.1.2 常量与变量 13
2.1.3 运算符与表达式 17
2.1.4 输入与输出 20
2.2 分支结构程序设计 23
2.2.1 分段函数求值 23
2.2.2 简单分支结构 24
2.2.3 多分支结构 26
2.2.4 开关语句 29
2.2.5 分支结构的嵌套 32
2.3 循环结构程序设计 34
2.3.1 求和问题 34
2.3.2 while循环 35
2.3.3 for循环 37
2.3.4 循环控制语句与嵌套 40
2.4 程序设计综合应用 41
2.4.1 最值问题 41
2.4.2 均值问题 43
2.4.3 计数问题 44
2.4.4 级数求和问题 45
2.4.5 穷举法 46
2.4.6 迭代法 47
2.4.7 随机数应用 49
2.4.8 字符图案打印 50
2.5 补充阅读材料 51
2.5.1 数据及其表示 51
2.5.2 编程规范 60
习题 63
第3章 函数 64
3.1 求三角形的面积 64
3.2 函数分类 68
3.2.1 标准库函数 68
3.2.2 自定义函数 70
3.3 函数的调用和参数传递 78
3.3.1 函数的调用形式 79
3.3.2 形参与实参 80
3.3.3 函数调用的执行过程 81
3.3.4 函数的嵌套调用 82
3.3.5 递归函数 85
3.4 函数的特殊形式 92
3.4.1 内联函数 92
3.4.2 带有默认参数的函数 93
3.4.3 函数的重载 94
3.5 变量的作用域及存储特性 98
3.5.1 变量的作用域 98
3.5.2 变量的存储特性 104
3.6 程序的文件结构与编译预处理 108
3.6.1 文件包含命令#include 108
3.6.2 条件编译 110
3.6.3 名字空间 113
习题 115
第4章 数组 116
4.1 一维数组 116
4.1.1 统计问题 116
4.1.2 一维数组的定义 116
4.1.3 一维数组的引用 117
4.1.4 一维数组的初始化 117
4.1.5 一维数组的处理 118
4.1.6 一维数组应用举例 122
4.2 二维数组 133
4.2.1 学生成绩表 133
4.2.2 二维数组的定义 134
4.2.3 二维数组的引用 135
4.2.4 二维数组的初始化 136
4.2.5 二维数组的处理 137
4.2.6 二维数组应用举例 140
4.3 字符数组 151
4.3.1 字符串排序 151
4.3.2 字符数组的定义 152
4.3.3 字符串与字符数组 152
4.3.4 字符数组的初始化 153
4.3.5 字符数组元素的引用 153
4.3.6 字符数组的输入输出 154
4.3.7 与字符串相关的其他函数 156
4.3.8 字符数组应用举例 159
习题 165
第5章 指针 166
5.1 指针的引入 166
5.2 指针的定义 166
5.2.1 内存与地址 166
5.2.2 数据与代码在内存的存放 167
5.2.3 值和类型 168
5.2.4 指针的定义 169
5.2.5 指针变量的使用 169
5.3 指针的运算 173
5.3.1 指针的算术运算 174
5.3.2 指针的关系运算 176
5.4 指针的应用 178
5.5 指针与数组 182
5.5.1 指针与一维数组 182
5.5.2 指针与二维数组 186
5.6 动态内存分配 193
5.6.1 new 和 delete 194
5.6.2 malloc 和 free 196
5.7 指针与函数 197
5.7.1 指针函数 197
5.7.2 函数指针 200
习题 201
第6章 结构体及其应用 202
6.1 复杂数据的管理问题 202
6.2 结构体 203
6.2.1 结构体声明 203
6.2.2 结构体变量的定义及
初始化 206
6.2.3 结构体成员的使用 207
6.3 结构体数组 211
6.4 链表及其应用 214
6.4.1 链表的基本概念 214
6.4.2 单链表的建立 215
6.4.3 单链表的遍历 221
6.4.4 单链表节点的插入 222
6.4.5 单链表节点的删除 224
6.4.6 约瑟夫环 226
习题 228
第7章 文件操作 229
7.1 文件概述 229
7.2 文件类型 230
7.3 文件指针 230
7.4 文件的打开与关闭 231
7.4.1 文件的打开 231
7.4.2 文件的关闭 232
7.5 文件的读写 233
7.5.1 读写字符的库函数 233
7.5.2 读写字符串的库函数 234
7.5.3 格式化读写函数 236
7.5.4 块读写的库函数 237
7.6 文件的定位 241
7.6.1 rewind() 241
7.6.2 fseek() 241
7.6.3 ftell() 242
习题 243
第8章 综合应用 244
8.1 问题描述 244
8.2 问题分析与设计 244
8.2.1 功能分析 244
8.2.2 数据结构分析 248
8.2.3 数据结构设计 249
8.3 系统实现 253
8.3.1 工程项目的文件构成 253
8.3.2 功能函数的编程实现 254
参考文献 267
|
內容試閱:
|
“高级语言程序设计”是信息类专业的基础必修课程,虽然国内外本课程教材较多,但大都侧重于编程语言的语言要素和编程技巧,而忽略了学生思维能力、实际工程问题的系统分析设计和整体解决方案设计能力的培养与训练,在实际教学过程中容易出现“从数学思维到计算思维转换难”“注重语言要素,弱化算法思维和工程能力”等问题,学生存在“听得懂课、编不来程”的尴尬。
纵观信息类专业的程序设计课程,要求学生掌握面向过程程序设计的基本框架、结构化程序设计思想和方法等,能针对求最大最小值、均值、数的分解、统计、排序、查找等具体问题进行合适的建模和编程实现;在相关工程知识的支持下,能够针对小型问题,使用自顶向下、逐步求精、模块化、穷举、试探等程序设计思想进行分析和求解,具有一定的计算思维能力;能够选择使用适当的开发环境包括操作系统和C语言开发工具等完成小规模C/C 语言程序的设计与调试,具有初步的编程能力。
本书着眼于计算思维和程序设计能力的培养,以问题驱动方式逐步建构学生的编程知识和能力体系,提高学生的建模与编程实现能力,促进成果导向的课程目标达成。本书共分为8章,各章的主要内容说明如下。
第 1 章为绪论。从一个简单的程序入手,让学生清楚程序的架构、算法的表述以及计算机执行程序的过程和简单工作原理。
第 2 章讲述程序设计基础。从顺序结构入手,不纠结复杂的数据类型和输入/输出控制,通过包括顺序、分支、循环等三种基本结构的实现方式,详细阐述统计问题、穷举、迭代、随机数应用以及字符图案打印等算法思想。
第 3 章讲述函数。从求三角形面积出发,阐述函数的作用及分类、函数定义及参数传递的基本方法等,重点讲述函数调用的执行过程以及递归函数的基本思想。
第 4 章讲述数组。从同类型批量数据存储的角度,阐述一维数组和二维数组的使用方法,重点讲述以函数方式操作数组数据的方法,以及其中所涉及的排序、查找、字符串处理等算法。
第 5 章讲述指针。以按需分配内存空间为例引入指针的概念,通过指针对一维数组(含字符串)、二维数组的操作以及动态内存分配等,强化学生对计算机内存存储数据的理解。
第 6 章讲述结构体及其应用。以学生基本信息管理为例,引入结构体的基本概念及其应用,以结构体数组强化学生利用程序设计进行数据管理的基本思想,结构体与指针的结合也将引出另外一种数据存储结构,将介绍链表以及链表的应用。
第 7 章讲述文件操作。本书以标准C中关于文件的操作为蓝本,以文件的应用为出发点,重点阐述了文件操作的基本步骤。
第 8 章为综合应用。以学生基本信息管理为例,详细阐述了一个系统从分析到设计、再到编码实现的全过程。
参加本书编写的作者拥有十多年的计算机程序设计语言教学经验和丰富的心得与体会,并参加了所在学校计算机科学与技术专业的工程教育专业认证的顶层设计、教学实施、评价和持续改进。本书内容广泛、重点突出,在编写上采用了问题导向、循序渐进、逐步展开的方法,精心设计了大量示例,以加深学生对程序设计思想的理解,提高学生利用程序设计思想和计算思维来分析问题和解决问题的能力。本书同时配备有多媒体课件、例题源代码以及用于学生训练的习题供下载。
本书由李益才、鲁云平主编,王家伟、姚雪梅、曹娟等共同编写。具体编写分工如下:第1章、第3章由王家伟编写,第2章、附录及最后的统稿由鲁云平完成,第4章由曹娟编写,第5章、第6章由李益才完成,第7章由姚雪梅编写,第8章由鲁云平、王家伟、李益才共同完成。本书的编写还得到了作者的各级领导和同仁的关心与支持,在此一并表示感谢。
限于编者水平,书中不当之处敬请广大读者批评指正,以使本书能得到不断完善。
编 者
|
|