《大学C/C++语言程式设计基础(第2版)》是由阳小华、马淑萍主编,2013年8月电子工业出版社出版的卓越工程师培养计画“十二五”规划计算机教材。该教材可作为高等学校理工类非计算机专业的程式设计教材,也可作为全国计算机等级考试的辅助教材,还可供程式设计爱好者参考。
该教材介绍了C/C++语言及科学计算软体MATLAB的基本概念和语法规则。全书共12章,主要内容包括:计算思维与程式设计,C语言与MATLAB基础,数据的输入/输出,选择结构程式设计,循环结构程式设计,函式与编译预处理,数组,指针,构造数据类型,档案,C++面向对象程式设计基础,C/C++与MATLAB混合编程。附录中列出了C语言及MATLAB常用库函式。
基本介绍
- 书名:大学C/C++语言程式设计基础(第2版)
- 作者:阳小华、马淑萍
- ISBN:9787121212444
- 类别:卓越工程师培养计画“十二五”规划计算机教材
- 页数:344页
- 出版社:电子工业出版社
- 出版时间:2013年8月
- 装帧:平装
- 开本:16开
- 字数:550千字
- CIP核字号:2013186658
成书过程
该教材为了把“计算思维能力的培养”作为计算机基础教育的核心任务,在第1版的基础上进行了修订。该教材由阳小华,马淑萍主编;全书由刘志明主审;熊东平、邹腊梅、胡义香、汪凤麟、刘立、罗晨晖参加了编写。
2013年8月,该教材由电子工业出版社出版。
策划编辑 | 责任编辑 |
---|---|
索蓉霞 | 索蓉霞 |
内容简介
该教材介绍了C/C++语言及科学计算软体MATLAB的基本概念和语法规则。全书共12章,主要内容包括:计算思维与程式设计,C语言与MATLAB基础,数据的输入/输出,选择结构程式设计,循环结构程式设计,函式与编译预处理,数组,指针,构造数据类型,档案,C++面向对象程式设计基础,C/C++与MATLAB混合编程。附录中列出了C语言及MATLAB常用库函式。
教材目录
第1章 计算思维与程式设计 1 1.1 计算思维 1 1.2 算法 2 1.2.1 算法概念 2 1.2.2 算法效率 3 1.3 程式设计 3 1.3.1 程式设计语言 4 1.3.2 程式的编译与执行 5 1.4 小结 7 习题1 7 第2章 C语言与MATLAB基础 8 2.1 C语言概述 8 2.1.1 C语言简介 8 2.1.2 C语言程式结构 8 2.1.3 C语言编译系统 10 2.2 C语言语法基础 10 2.2.1 字元集 10 2.2.2 标识符 11 2.2.3 关键字 11 2.2.4 常量 11 2.2.5 变数 11 2.3 C语言的数据类型 12 2.3.1 整型数据 12 2.3.2 实型数据 13 2.3.3 字元型数据 14 2.4 C语言运算符与表达式 15 2.4.1 算术运算符和算术表达式 15 2.4.2 赋值运算符和赋值表达式 17 2.4.3 关係运算符和关係表达式 18 2.4.4 逻辑运算符和逻辑表达式 20 2.4.5 位运算 21 2.4.6 其他运算 24 2.5 MATLAB概述 25 2.5.1 MATLAB简介 25 2.5.2 基本功能 25 2.5.3 主要套用 26 2.5.4 MATLAB特点 27 2.5.5 MATLAB优点 27 2.5.6 专业套用 30 2.6 MATLAB语法基础 30 2.6.1 MATLAB的数据类型 30 2.6.2 常量 32 2.6.3 部分常用运算符 32 2.6.4 变数及其赋值 33 2.7 小结 34 习题2 35 第3章 数据的输入/输出 41 3.1 字元输入/输出函式 41 3.2 字元串输入/输出函式 42 3.3 格式输入/输出函式 42 3.3.1 格式输入函式 42 3.3.2 格式输出函式 44 3.4 MATLAB的输入/输出 50 3.4.1 输入文本数据 50 3.4.2 输出文本数据 51 3.4.3 低级档案输入/输出函式 51 3.4.4 注释与标点 52 3.5 实例拓展 52 3.6 小结 53 习题3 54 第4章 选择结构程式设计 55 4.1 if语句 55 4.1.1 单分支if语句 55 4.1.2 双分支if…else语句 55 4.1.3 多分支选择语句 56 4.1.4 if语句的嵌套 57 4.2 switch语句 58 4.2.1 switch语句简介 58 4.2.2 break语句在switch中的套用 59 4.3 综合实例 60 4.4 MATLAB选择结构 61 4.4.1 if…else…endif结构 62 4.4.2 switch…case结构 62 4.4.3 try…catch结构 63 4.5 实例拓展 64 4.5.1 C语言选单选择实例 64 4.5.2 MATLAB选单选择实例 65 4.6 小结 66 习题4 66 第5章 循环结构程式设计 72 5.1 while语句 72 5.2 do…while语句 73 5.3 for语句 74 5.4 循环结构的嵌套 76 5.5 break语句和continue语句在循环结构中的套用 77 5.6 综合实例 78 5.7 MATLAB循环结构 80 5.7.1 while结构 80 5.7.2 for语句 81 5.8 实例拓展 82 5.8.1 工程计算实例 82 5.8.2 MATLAB实例 83 5.9 小结 84 习题5 84 第6章 函式与编译预处理 91 6.1 函式概述 91 6.2 函式的定义和说明 92 6.2.1 函式的定义 92 6.2.2 函式的返回值 94 6.2.3 函式的说明 95 6.3 函式的调用 97 6.3.1 函式调用的一般形式 97 6.3.2 函式调用的方式 98 6.4 函式的参数 98 6.5 函式的嵌套调用和递归调用 101 6.5.1 函式的嵌套调用 101 6.5.2 函式的递归调用 102 6.6 变数的存储类型 108 6.6.1 变数的作用域与生存期 108 6.6.2 变数的存储类型 108 6.6.3 局部变数 109 6.6.4 全局变数和静态全局变数 111 6.7 内部函式和外部函式 114 6.7.1 内部函式 114 6.7.2 外部函式 114 6.8 编译预处理命令 115 6.8.1 宏替换 115 6.8.2 档案包含 118 6.8.3 条件编译 119 6.9 综合实例 122 6.10 MATLAB函式简介 124 6.10.1 m档案概述 124 6.10.2 用m档案实现MATLAB函式 125 6.11 实例拓展 126 6.11.1 工程计算实例 127 6.11.2 MATLAB实例 128 6.12 小结 129 习题6 130 | 第7章 数组 139 7.1 一维数组 139 7.1.1 一维数组的定义 139 7.1.2 一维数组元素的引用 140 7.1.3 一维数组的初始化 140 7.2 二维数组 143 7.2.1 二维数组的定义和引用 143 7.2.2 二维数组元素的初始化 145 7.3 多维数组 146 7.3.1 多维数组的定义、使用与存储 146 7.3.2 多维数组的初始化 147 7.4 字元串与字元数组 148 7.4.1 字元串与字元数组 148 7.4.2 字元数组的初始化 149 7.4.3 字元数组的输入/输出 150 7.4.4 字元串处理函式 153 7.5 字元串数组 155 7.6 数组作为函式参数 156 7.6.1 数组元素作为函式参数 156 7.6.2 地址量作为函式参数 156 7.7 综合实例 161 7.8 MATLAB数组 162 7.8.1 向量的创建 163 7.8.2 矩阵的创建 163 7.8.3 矩阵元素的提取与替换 164 7.8.4 矩阵元素的重排和複製排列 166 7.8.5 矩阵的翻转和旋转 166 7.8.6 矩阵的生成与提取函式 167 7.8.7 套用实例 167 7.9 实例拓展 167 7.9.1 工程计算实例 167 7.9.2 MATLAB实例 170 7.10 小结 171 习题7 172 第8章 指针 180 8.1 指针的基本概念 180 8.2 指针变数的声明与使用 181 8.2.1 指针变数的声明 181 8.2.2 指针变数的赋值与使用 181 8.2.3 二级指针 184 8.3 指针运算 185 8.3.1 赋值运算 185 8.3.2 算术运算 185 8.3.3 关係运算 187 8.4 指针与数组 187 8.4.1 指针与一维数组 187 8.4.2 指针与二维数组 191 8.5 指针与字元串 194 8.5.1 指向字元串的指针 194 8.5.2 字元指针与字元数组的比较 197 8.6 指针与函式 199 8.6.1 指针作为函式参数 199 8.6.2 函式指针变数 208 8.6.3 指针型函式 210 8.7 指针数组与main函式的参数 212 8.8 综合实例 216 8.9 实例拓展 218 8.10 小结 223 习题8 224 第9章 构造数据类型 234 9.1 结构体 234 9.1.1 结构体的定义 234 9.1.2 结构体变数说明 235 9.1.3 结构体变数的引用 237 9.1.4 结构体数组 238 9.1.5 指向结构体变数的指针 240 9.1.6 结构体与函式 242 9.1.7 动态存储分配 244 9.1.8 结构体与鍊表 246 9.2 共用体 250 9.3 枚举 253 9.4 自定义数据类型 254 9.5 综合实例 255 9.6 MATLAB的结构数据类型 258 9.6.1 结构数组的创建 258 9.6.2 结构数组的操作 263 9.7 小结 263 习题9 264 第10章 档案 269 10.1 档案的概念 269 10.2 档案指针 270 10.3 档案的打开与关闭 270 10.3.1 档案打开函式 270 10.3.2 档案关闭函式 272 10.4 档案的读/写 273 10.4.1 字元读/写函式fgetc和fputc 273 10.4.2 字元串读/写函式fgets和fputs 276 10.4.3 数据块读/写函式fread和fwrite 277 10.4.4 格式化读/写函式fscanf和fprintf 279 10.5 档案的随机读/写 280 10.5.1 档案定位 280 10.5.2 档案的随机读/写 280 10.6 档案检测函式 281 10.7 综合实例 282 10.8 MATLAB档案操作 285 10.8.1 档案的打开与关闭 285 10.8.2 二进制档案的读/写操作 286 10.8.3 文本档案的读/写操作 287 10.8.4 MATLAB的字元串操作 288 10.9 小结 288 习题10 289 第11章 C++面向对象程式设计基础 293 11.1 面向对象的基本概念 293 11.1.1 类和对象 293 11.1.2 封装 293 11.1.3 继承 293 11.1.4 多态 293 11.2 C++概述 294 11.3 C++面向对象的特性 294 11.4 C++的词法与规则 294 11.5 C++程式结构的组成 295 11.6 C++程式的开发步骤 295 11.7 C++程式示例 295 11.8 面向对象的程式设计方法 296 11.8.1 结构化程式设计 296 11.8.2 面向对象程式设计 297 11.8.3 结构化方法与面向对象方法的比较 297 11.9 小结 298 习题11 298 第12章 C/C++与MATLAB混合编程 300 12.1 软体开发 300 12.2 混合编程概念 302 12.3 混合编程开发实例 303 12.4 小结 312 附录A C语言常用库函式 313 附录B MATLAB函式表 318 参考文献 334 |
(注:目录排版顺序为从左列至右列)
教学资源
- 配套教材
该教材有配套教材——《大学C/C++语言程式设计实验教程(第2版)》。
书名 | 书号 | 出版社 | 出版时间 | 作者 |
---|---|---|---|---|
《大学C/C++语言程式设计实验教程(第2版)》 | 9787121212451 | 电子工业出版社 | 2013-08 | 阳小华、罗晨晖 |
- 课程资源
该教材配有电子课件和相关程式原始码。
教材特色
- 该教材以计算思维为主线重新组织内容;同时强调掌握科学计算工具和培养科学计算能力对理工类学生的重要性;
- 该教材将工程计算综合实例贯穿于全书各章节;
- 该教材在编写时兼顾了全国计算机等级考试的要求;所有源程式在Visual C++ 6.0平台上运行通过;
- 该教材除讲解传统C语言程式设计外,还介绍了MATLAB软体,并增加了工程计算实例。
作者简介
阳小华,1963年生,男,博士,南华大学计算机学院教授,主要从事网路舆情与系统安全方面的研究。
马淑萍,南华大学计算机科学与技术学院教师。