《大学C/C++语言程序设计基础(第3版)》是由阳小华、李晓昀、马淑萍主编,2019年9月电子工业出版社出版的全国电子信息优秀教材、普通高等教育“十三五”规划教材、新工科建设之路·计算机类规划教材。该教材可作为高等学校理工类非计算机专业的程序设计教材,也可作为全国计算机等级考试的辅助教材,还可供程序设计爱好者参考。
全书共12章,介绍了C/C++语言及科学计算软件MATLAB的基本概念和语法规则。
目录
- 第1章 绪论 1
- 1.1 计算机前沿技术 1
- 1.1.1 大数据 1
- 1.1.2 云计算与边缘计算 2
- 1.1.3 人工智能 5
- 1.1.4 信息检索 6
- 1.2 计算机基础 7
- 1.2.1 计算机系统 7
- 1.2.2 数制转换 9
- 1.2.3 信息的数字化 13
- 1.3 计算思维与算法 18
- 1.3.1 计算思维 18
- 1.3.2 算法 19
- 1.4 程序设计语言概述 22
- 1.5 小结 23
- 习题1 24
- 第2章 C语言与MATLAB基础 25
- 2.1 C语言概述 25
- 2.1.1 C语言简介 25
- 2.1.2 C语言程序结构 25
- 2.1.3 C语言编译系统 27
- 2.2 C语言语法基础 27
- 2.2.1 字符集 27
- 2.2.2 标识符 28
- 2.2.3 关键字 28
- 2.2.4 常量 28
- 2.2.5 变量 29
- 2.3 C语言的数据类型 29
- 2.3.1 整型数据 29
- 2.3.2 实型数据 30
- 2.3.3 字符型数据 31
- 2.4 C语言运算符与表达式 32
- 2.4.1 算术运算符和算术表达式 33
- 2.4.2 赋值运算符和赋值表达式 34
- 2.4.3 关系运算符和关系表达式 36
- 2.4.4 逻辑运算符和逻辑表达式 37
- 2.4.5 位运算 38
- 2.4.6 其他运算 41
- 2.5 MATLAB概述 42
- 2.6 MATLAB语法基础 47
- 2.6.1 MATLAB的数据类型 47
- 2.6.2 常量 49
- 2.6.3 部分常用运算符 49
- 2.6.4 变量及其赋值 50
- 2.7 小结 51
- 习题2 53
- 第3章 数据的输入/输出 58
- 3.1 字符输入/输出函数 58
- 3.2 字符串输入/输出函数 59
- 3.3 格式输入/输出函数 59
- 3.4 MATLAB的输入/输出 67
- 3.4.1 输入文本数据 67
- 3.4.2 输出文本数据 68
- 3.4.3 低级文件输入/输出函数 68
- 3.4.4 注释与标点 69
- 3.5 实例拓展 69
- 3.6 小结 70
- 习题3 71
- 第4章 选择结构程序设计 72
- 4.1 if语句 72
- 4.1.1 单分支if语句 72
- 4.1.2 双分支if…else语句 72
- 4.1.3 多分支选择语句 73
- 4.1.4 if语句的嵌套 74
- 4.2 switch语句 75
- 4.2.1 switch语句简介 75
- 4.2.2 break语句在switch中的应用 76
- 4.3 综合实例 77
- 4.4 MATLAB选择结构 78
- 4.4.1 if…else…endif结构 78
- 4.4.2 switch…case结构 79
- 4.4.3 try…catch结构 80
- 4.5 实例拓展 81
- 4.6 小结 83
- 习题4 83
- 第5章 循环结构程序设计 89
- 5.1 while语句 89
- 5.2 do…while语句 90
- 5.3 for语句 91
- 5.4 循环结构的嵌套 93
- 5.5 break语句和continue语句在循环结构中的应用 94
- 5.6 综合实例 95
- 5.7 MATLAB循环结构 97
- 5.7.1 while语句 97
- 5.7.2 for语句 98
- 5.8 实例拓展 99
- 5.9 小结 101
- 习题5 101
- 第6章 函数与编译预处理 108
- 6.1 函数概述 108
- 6.2 函数的定义和说明 109
- 6.2.1 函数的定义 109
- 6.2.2 函数的返回值 111
- 6.2.3 函数的说明 113
- 6.3 函数的调用 114
- 6.3.1 函数调用的一般形式 114
- 6.3.2 函数调用的方式 115
- 6.4 函数的参数 116
- 6.5 函数的嵌套调用和递归调用 118
- 6.5.1 函数的嵌套调用 118
- 6.5.2 函数的递归调用 119
- 6.6 变量的存储类型 125
- 6.6.1 变量的作用域与生存期 125
- 6.6.2 变量的存储类型 125
- 6.6.3 局部变量 126
- 6.6.4 全局变量和静态全局变量 129
- 6.7 内部函数和外部函数 131
- 6.7.1 内部函数 132
- 6.7.2 外部函数 132
- 6.8 编译预处理命令 133
- 6.8.1 宏替换 133
- 6.8.2 文件包含 136
- 6.8.3 条件编译 137
- 6.9 综合实例 140
- 6.10 MATLAB函数简介 142
- 6.10.1 m文件概述 142
- 6.10.2 用m文件实现MATLAB函数 143
- 6.11 实例拓展 144
- 6.12 小结 146
- 习题6 147
- 第7章 数组 156
- 7.1 一维数组 156
- 7.1.1 一维数组的定义 156
- 7.1.2 一维数组元素的引用 157
- 7.1.3 一维数组的初始化 157
- 7.2 二维数组 160
- 7.2.1 二维数组的定义和引用 160
- 7.2.2 二维数组元素的初始化 162
- 7.3 多维数组 163
- 7.3.1 多维数组的定义、使用与存储 163
- 7.3.2 多维数组的初始化 164
- 7.4 字符串与字符数组 165
- 7.4.1 字符串与字符数组的概念 165
- 7.4.2 字符数组的初始化 166
- 7.4.3 字符数组的输入/输出 167
- 7.4.4 字符串处理函数 170
- 7.5 字符串数组 172
- 7.6 数组作为函数参数 173
- 7.6.1 数组元素作为函数参数 173
- 7.6.2 地址量作为函数参数 173
- 7.7 综合实例 178
- 7.8 MATLAB数组 179
- 7.8.1 向量的创建 180
- 7.8.2 矩阵的创建 180
- 7.8.3 矩阵元素的提取与替换 181
- 7.8.4 矩阵元素的重排和复制排列 183
- 7.8.5 矩阵的翻转和旋转 183
- 7.8.6 矩阵的生成与提取函数 184
- 7.8.7 应用实例 184
- 7.9 实例拓展 184
- 7.10 小结 188
- 习题7 189
- 第8章 指针 197
- 8.1 指针的基本概念 197
- 8.2 指针变量的声明与使用 198
- 8.2.1 指针变量的声明 198
- 8.2.2 指针变量的赋值与使用 198
- 8.2.3 二级指针 201
- 8.3 指针运算 202
- 8.3.1 赋值运算 202
- 8.3.2 算术运算 202
- 8.3.3 关系运算 204
- 8.4 指针与数组 204
- 8.4.1 指针与一维数组 204
- 8.4.2 指针与二维数组 208
- 8.5 指针与字符串 211
- 8.5.1 指向字符串的指针 211
- 8.5.2 字符指针与字符数组的比较 214
- 8.6 指针与函数 216
- 8.6.1 指针作为函数参数 216
- 8.6.2 函数指针变量 225
- 8.6.3 指针型函数 227
- 8.7 指针数组与main( )函数的参数 229
- 8.8 综合实例 233
- 8.9 实例拓展 235
- 8.10 小结 240
- 习题8 241
- 第9章 构造数据类型 251
- 9.1 结构体 251
- 9.1.1 结构体的定义 251
- 9.1.2 结构体变量的说明 252
- 9.1.3 结构体变量的引用 254
- 9.1.4 结构体数组 255
- 9.1.5 指向结构体的指针 257
- 9.1.6 结构体与函数 259
- 9.1.7 动态存储分配 261
- 9.1.8 结构体与链表 263
- 9.2 共用体 267
- 9.3 枚举 270
- 9.4 自定义数据类型 271
- 9.5 综合实例 272
- 9.6 MATLAB的结构数据类型 275
- 9.6.1 结构体数组的创建 275
- 9.6.2 结构体数组的操作 280
- 9.7 小结 280
- 习题9 281
- 第10章 文件 286
- 10.1 文件的概念 286
- 10.2 文件指针 287
- 10.3 文件的打开与关闭 287
- 10.3.1 文件打开函数 287
- 10.3.2 文件关闭函数 289
- 10.4 文件的读/写 290
- 10.4.1 字符读/写函数fgetc( )和fputc( ) 290
- 10.4.2 字符串读/写函数fgets( )和fputs( ) 293
- 10.4.3 数据块读/写函数fread( )和fwrite( ) 294
- 10.4.4 格式化读/写函数fscanf( )和fprintf( ) 296
- 10.5 文件的随机读/写 297
- 10.5.1 文件定位 297
- 10.5.2 文件的随机读/写函数 297
- 10.6 文件检测函数 298
- 10.7 综合实例 299
- 10.8 MATLAB文件操作 302
- 10.8.1 文件的打开与关闭 302
- 10.8.2 二进制文件的读/写操作 303
- 10.8.3 文本文件的读/写操作 304
- 10.8.4 MATLAB的字符串操作 305
- 10.9 小结 305
- 习题10 306
- 第11章 C++面向对象程序设计基础 310
- 11.1 面向对象的基本概念 310
- 11.1.1 类和对象 310
- 11.1.2 封装 310
- 11.1.3 继承 310
- 11.1.4 多态 310
- 11.2 C++概述 311
- 11.3 C++面向对象的特性 311
- 11.4 C++的词法与规则 311
- 11.5 C++程序结构的组成 312
- 11.6 C++程序的开发步骤 312
- 11.7 C++程序示例 312
- 11.8 面向对象的程序设计方法 314
- 11.8.1 结构化程序设计 314
- 11.8.2 面向对象程序设计 314
- 11.8.3 结构化方法与面向对象方法的比较 314
- 11.9 小结 315
- 习题11 315
- 第12章 C/C++与MATLAB混合编程 317
- 12.1 软件开发 317
- 12.2 混合编程概念 318
- 12.3 混合编程开发实例 319
- 12.4 小结 328
- 附录A C语言常用库函数 329
- 附录B MATLAB函数表 334
- 参考文献 353