关于本书的内容有任何问题,请联系 刘博
第1章 绪论 1 1.1 C++简介 1 1.1.1 机器语言与高级语言 1 1.1.2 编译过程 1 1.1.3 C++语言 2 1.1.4 C++的发展 3 1.1.5 兼容性 3 1.2 面向过程编程与面向对象编程 4 1.3 大语言模型介绍 4 1.3.1 大语言模型 4 1.3.2 AI编程助手 5 1.3.3 可靠性问题 6 1.4 信息的表示与存储 7 1.4.1计算机内存与存储单位基础 7 1.4.2 进制介绍 8 1.4.3 整数进制转换 9 1.4.4 小数进制转换 12 1.5 本章小结 14 第2章 开始学习C++ 15 2.1 进入C++ 15 2.1.1 最简单的程序 15 2.1.2 使用cout输出 16 2.1.3 命名空间的使用 18 2.1.4 C++注释 18 2.2 程序语句 19 2.3 变量及变量定义 20 2.4 数据类型 21 2.4.1 整型 21 2.4.2 浮点型 21 2.5 C++程序 21 2.5.1 输入输出 21 2.5.2 赋值语句 22 2.5.3 应用实例 23 2.6 语法探究* 24 2.6.1 变量命名规则 24 2.6.2 变量定义及初始化 25 2.6.3 原码与补码 25 2.6.4 整数类型的选择与溢出问题 27 2.6.5 浮点类型的选择与精度问题 29 2.7 大模型实践 30 2.7.1 大模型交互问答 30 2.7.2 编程助手生成代码 31 2.8 大模型探究 32 2.9 本章小结 34 第3章 顺序结构程序设计 35 3.1 基本数据类型 35 3.1.1 char类型 35 3.1.2 bool类型 40 3.1.3 指针 40 3.2 算术表达式 42 3.2.1 算术运算符 42 3.2.2 算术表达式 43 3.2.3 除法运算 43 3.2.4 取余运算 44 3.3 赋值表达式 45 3.4 自增自减运算符 46 3.5 复合数据类型 47 3.5.1 数组 47 3.5.2 向量vector 47 3.5.3 字符串string 47 3.5.4 结构体与类 47 3.6 函数 48 3.6.1 库函数及使用示例 48 3.6.2 函数的调用及执行过程 49 3.6.3 用户自定义函数 50 3.7 顺序结构编程 52 3.7.1 顺序结构的计算思维 52 3.7.2 应用实例 53 3.8语法探究* 55 3.8.1 常量 55 3.8.2 算术运算中的类型转换 57 3.8.3 赋值运算中的类型转换 58 3.8.4 强制类型转换 58 3.8.5 变量的auto声明 59 3.9 实践探究 59 3.9.1 立方体体积 59 3.9.2 家庭平均人口数 61 3.10 大模型探究 63 3.11 本章小结 64 第4章 输入输出和文件 65 4.1 引言 65 4.2 输入cin 65 4.2.1 cin>> 65 4.2.2 cin.get() 66 4.3 输出cout 66 4.3.1 cout<< 66 4.3.2 输出n位小数 67 4.3.3 设置输出宽度 69 4.3.4 设置输出对齐方式 69 4.3.5 设置输出填充 70 4.4 文件介绍 70 4.5 文件操作 71 4.6 语法探究* 74 4.6.1 输入缓冲区 74 4.6.2 文件读写位置指针 78 4.6.3 文件打开模式详解 79 4.7 实践探究 83 4.7.1 输入输出日期与BMI 83 4.8 大模型探究 86 4.9 本章小结 87 第5章 分支结构程序设计 88 5.1 引言 88 5.2 if语句 88 5.2.1 单分支if语句 88 5.2.2 双分支if语句 89 5.2.3 多分支if语句 89 5.2.4 if语句嵌套 90 5.3 关系表达式与逻辑表达式 91 5.3.1 关系表达式 91 5.3.2 逻辑表达式 92 5.4 if语句应用 93 5.5 switch语句 95 5.6 switch语句应用 96 5.7 语法探究* 98 5.7.1 布尔值和数值的转换 98 5.7.2 运算符的优先级 99 5.7.3 逻辑表达式的短路运算 100 5.7.4 条件表达式 101 5.7.5 if子句是否需要花括号 102 5.7.6 else与if的匹配原则 103 5.7.7 流程图 105 5.8 实践探究** 106 5.9 大模型实践 108 5.10 程序测试 110 5.10.1 测试的必要性 110 5.10.2 相等比较类测试 111 5.10.3 大小比较类测试 111 5.10.4 逻辑表达式测试 111 5.11 大模型探究 112 5.12 本章小结 113 第6章 循环结构程序设计 114 6.1 循环的引入 114 6.2 基于条件的循环 114 6.2.1 while语句 114 6.2.2 do-while语句 116 6.3 for语句 118 6.3.1 基于计数的循环 118 6.3.2 基于范围的循环 119 6.4 break和continue 119 6.5 循环嵌套 122 6.6 应用实例 124 6.6.1 循环的计算思维 124 6.6.2 迭代法 126 6.6.3 枚举法 130 6.7 语法探究* 133 6.7.1 for语句的表达式 133 6.7.2 循环语句的执行流程 134 6.8 实践探究 137 6.9 大模型实践 140 6.10 大模型探究 142 6.11 本章小结 144 第7章 函数 145 7.1 函数定义 145 7.1.1 函数定义解析 145 7.1.2 函数定义示例 145 7.2 函数使用 148 7.2.1 函数调用方式 148 7.2.2 函数返回值的使用 149 7.2.3 函数的嵌套调用 149 7.3 语法探究* 151 7.3.1 多个return语句 151 7.3.2 函数调用时的类型转换 151 7.3.3 函数原型 152 7.4 变量的作用域与生存期 154 7.4.1 局部变量 154 7.4.2 全局变量 158 7.4.3 extern与static 159 7.5 函数参数传递方式 161 7.5.1 传值 161 7.5.2 传指针 161 7.5.3 传引用 163 7.5.4 应用实例:交换变量 165 7.6 默认形参 167 7.7 函数重载 169 7.8 函数模板 171 7.9 内联函数 173 7.10 实践探究* 173 7.10.1 头文件 174 7.11 大模型实践 175 7.12 大模型探究 178 7.13 本章小结 179 第8章 一维数组与vector 180 8.1 引言 180 8.2 数组的定义与使用 180 8.2.1 定义数组 180 8.2.2 使用数组 181 8.3 一维数组应用 182 8.4 一维数组的指针 185 8.4.1 指向数组的指针 185 8.4.2 指针的运算 186 8.4.3 通过指针访问数组元素 186 8.4.4 使用指针访问数组实例 187 8.5 数组作函数参数 188 8.5.1 函数定义与调用 188 8.5.2 参数的内存共享 189 8.5.3 应用举例 190 8.6 语法探究* 194 8.6.1 数组的初始化 194 8.6.2 下标越界 195 8.6.3 基于范围的for循环 196 8.6.4 循环数组 197 8.6.5 数组名与指针的区别 198 8.6.6 指针指向数组任意元素 198 8.6.7 指针形式的函数形参 199 8.6.8 动态分配内存 201 8.7 动态数组vector 202 8.7.1 基本用法 202 8.7.2 添加和删除元素 203 8.7.3 遍历操作 203 8.7.4 应用举例 205 8.8 迭代器* 207 8.9 vector常用操作** 208 8.9.1 赋值操作 208 8.9.2 插入操作 209 8.9.3 删除操作 209 8.9.4 其它操作 210 8.9.5 插入删除导致迭代器失效 210 8.10 实践探究** 210 8.10.1 二分查找 210 8.10.2 选择排序 212 8.11 大模型实践 213 8.12 大模型探究 215 8.13 本章小结 218 第9章 二维数组 219 9.1 引言 219 9.2 数组的定义与使用 219 9.2.1 定义数组 219 9.2.2 使用数组 220 9.3 二维数组作函数参数 221 9.4 二维数组应用 222 9.5 语法探究* 226 9.5.1 二维数组的初始化 226 9.6 二维vector* 228 9.6.1 定义与初始化 228 9.6.2 遍历 229 9.6.3 插入与删除 231 9.7 实践探究** 232 9.7.1 蛇形数组 232 9.7.2 魔方阵 234 9.7.3 杨辉三角 236 9.8 大模型实践 237 9.9 大模型探究 240 9.10 本章小结 242 第10章 字符串 243 10.1 引言 243 10.2 使用字符数组存储字符串 243 10.2.1 字符数组定义与初始化 243 10.2.2 使用字符数组 244 10.3 字符串处理函数 246 10.3.1 字符串输入 246 10.3.2 字符串处理函数 247 10.4 字符串指针 251 10.4.1 字符数组的指针 251 10.4.2 字符串常量的指针 252 10.5 字符串应用 253 10.5.1 单词计数 253 10.5.2 国家名称排序 254 10.5.3 字符串复制 255 10.5.4 字符串拼接 256 10.6 语法探究* 257 10.6.1 字符串的终止符'\0' 257 10.6.2 指针变量和数组名辨析 259 10.6.3 指针数组 262 10.7 string字符串类 264 10.7.1 介绍 264 10.7.2 创建对象 265 10.7.3 字符串输入 265 10.7.4 遍历操作 266 10.7.5 string的运算符 267 10.7.6 增删改查操作 268 10.7.7 其它操作 270 10.7.8 C风格字符串 271 10.8 文件读写字符串 271 10.8.1 字符数组字符串 271 10.8.2 string字符串 273 10.9 实践探究** 274 10.9.1 查找单词次数(字符数组) 275 10.9.2 查找单词次数(string) 276 10.10 大模型实践 277 10.11 大模型探究 281 10.12 本章小结 283 第11章 递归 284 11.1 引言 284 11.2 计算n! 284 11.2.1 设计递归程序 284 11.2.2 理解递归执行流程 285 11.2.3 递归与迭代的对比 286 11.3 斐波那契数列 287 11.3.1 设计递归程序 287 11.3.2 理解递归执行流程 288 11.4 汉诺塔 289 11.4.1 汉诺塔问题描述 289 11.4.2 设计递归程序 290 11.4.3 理解递归执行流程 291 11.4.4 递归中的参数传递 293 11.5 理解递归流程 295 11.6 递归算法:回溯法* 296 11.6.1 回溯法介绍 296 11.6.2 寻找纯素数 296 11.6.3 全排列 299 11.6.4 N皇后问题 301 11.7 递归算法:分治法* 303 11.7.1 分治法介绍 303 11.7.2 二分查找 304 11.7.3 归并排序 305 11.8 大模型探究 307 11.9 本章小结 308 第12章 类与对象(一) 310 12.1 引言 310 12.2 从面向过程到面向对象 310 12.3类的定义 311 12.3.1 类声明 311 12.3.2 类实现 312 12.4 对象的创建与使用 313 12.5 成员的访问控制 314 12.6 类的组合 315 12.7 对象数组 317 12.8 对象指针 317 12.8.1 对象指针定义与使用 317 12.8.2 对象数组的指针 318 12.8.3 this指针 319 12.9 对象与函数 319 12.9.1 对象作为函数参数 319 12.9.2 对象作为函数的返回值 321 12.10 构造函数 321 12.10.1 构造函数的概念 321 12.10.2 构造函数的重载 323 12.10.3 构造函数的初始化列表 324 12.11 析构函数 325 12.12 组合类的构造函数与析构函数 326 12.12.1 组合类的构造函数 326 12.12.2 组合类的析构函数 328 12.13 语法探究* 329 12.13.1 无参构造函数 329 12.13.2 单参构造函数的类型转换功能 331 12.13.3 动态对象 332 12.14 应用实例 334 12.15 大模型探究** 335 第13章 类与对象(二) 339 13.1 引言 339 13.2 静态成员 339 13.2.1 静态数据成员 339 13.2.2 静态成员函数 340 13.3 友元 342 13.3.1 友元函数 342 13.3.2 友元类 344 13.4 常成员与常对象 345 13.4.1 常数据成员 345 13.4.2 常成员函数 346 13.4.3 常对象 347 13.4.4 常对象与常成员的结合 347 13.5 拷贝构造函数 348 13.5.1 定义及调用时机 348 13.5.2 浅拷贝与深拷贝 350 13.6 运算符重载 351 13.6.1 运算符重载概念 351 13.6.2 重载为成员函数 353 13.6.3 重载为友元函数 354 13.7 类模板 357 13.7.1 类模板的定义 357 13.7.2 类模板的实例化 359 13.8 应用实例 360 13.8.1 静态成员:存活数 360 13.8.2 运算符重载:MyString类 362 13.8.3 模板类:MyVector类 365 13.9 大模型探究** 368 第14章 继承与多态 372 14.1 继承 372 14.1.1 继承的概念 372 14.1.2 派生类的定义 372 14.1.3 继承方式 374 14.1.4 派生类的构造和析构 376 14.1.5 应用实例 377 14.2 多态 380 14.2.1 类型兼容规则 380 14.2.2 多态性 381 14.2.3 虚函数 384 14.2.4 纯虚函数 386 14.2.5 抽象类 387 14.3 语法探究* 389 14.3.1 单继承的构造与析构顺序 389 14.3.2 多层继承的构造与析构顺序 390 14.3.3 多继承 392 14.3.4 虚析构函数 393 第15章 标准模板库STL 395 15.1 STL简介 395 15.2 算法 396 15.2.1 算法介绍 396 15.2.2 与函数对象无关的算法 398 15.3 一元函数对象与一元谓词 400 15.3.1 形参包含一元函数的算法 400 15.3.2 函数对象 402 15.3.3 谓词 403 15.4 二元函数对象与二元谓词 404 15.4.1 形参包含二元函数的算法 404 15.4.2 形参包含二元谓词的算法 406 15.5 预定义函数对象与函数适配器 407 15.5.1 预定义函数对象 407 15.5.2 函数适配器 409 15.5.3 使用函数适配器 409 15.6 本章小结 412 附录1 ASCII码表 413 附录2 运算符优先级 414
本书是《C语言程序设计基础(微课版)》的配套习题和实验指导,建议与主教材配合使用。全书共13章,每章均本书配备...
Java是一门流行的面向对象程序设计语言,在Web开发、移动应用程序开发中都有广泛的应用,学习Java编程可以...
本书精心选择和设计趣味性、实用性较强的案例,通过案例由浅入深地介绍每章所涉及的知识点。 全书共10章,主要包...
本书是国家精品在线开放课程、国家级一流本科课程、华为“智能基座”精品慕课“C语言程序设计精髓”的配套教材。全书...
本书是 《Python 程序设计基础(微课版)》配套的实验教程。本书通过实际案例,助力学生掌握 Python ...
我要评论