作者:黄龙军 著
页数:332
出版社:清华大学出版社
出版日期:2024
ISBN:9787302677680
电子书格式:pdf/epub/txt
网盘下载地址:下载大学生程序设计竞赛入门——C/C++程序设计(微课视频版)第2版
内容简介
“本书主要以C/C++语言描述过程化程序设计,并引入程序设计竞赛的基础知识。本书共9章,内容包括绪论、程序设计基础知识、程序控制结构、数组、函数、结构体、指针、链表和程序设计竞赛基础,介绍程序设计的概念、思想和方法及程序设计竞赛相关知识,培养学生的计算思维,提高其分析、解决具体问题的能力、实践能力和创新能力。程序设计竞赛基础方面包括在线做题结构、空间换时间的思想、C++标准模板库常用容器、递推与动态规划、搜索、并查集、贪心法和回溯法等常用算法、大整数运算及简单数学问题等方面的入门知识。
本书以问题求解为主线,注重课程教学与程序设计竞赛相结合,可作为高等学校本、专科计算机类、电子信息类及自动化类等专业学生的“高级语言”“C语言程序设计”“C++过程化程序设计”等课程的教材,也可作为大学生程序设计竞赛参加者及C/C++语言自学者、开发者的入门参考书,对开设C/C++语言程序设计课程或指导大学生程序设计竞赛的教师有一定的参考作用。
“
本书特色
本书是第二批国家级一流本科课程配套教材《大学生程序设计竞赛入门—C/C 程序设计(微课视频版)》的第2版,主要以C 语言描述过程化程序设计,同时兼顾C语言,并引入大学生程序设计竞赛的基础知识,以问题求解为主线,注重课程教学与程序设计竞赛相结合。
目录
第1章 绪论 11.1 大学生程序设计竞赛简介 11.2 程序设计及其语言简介 2 1.2.1 程序与程序设计 2 1.2.2 程序设计语言 21.3 简单的C/C 程序 31.4 Dev-C 开发环境 6 1.4.1 Dev-C 开发环境简介 6 1.4.2 使用Dev-C 编写程序 7 1.4.3 使用Dev-C 调试程序 101.5 在线题目求解 13习题 15 第1章 绪论 11.1 大学生程序设计竞赛简介 11.2 程序设计及其语言简介 2 1.2.1 程序与程序设计 2 1.2.2 程序设计语言 21.3 简单的C/C 程序 31.4 Dev-C 开发环境 6 1.4.1 Dev-C 开发环境简介 6 1.4.2 使用Dev-C 编写程序 7 1.4.3 使用Dev-C 调试程序 101.5 在线题目求解 13习题 15 第2章 程序设计基础知识 172.1 引例 172.2 C/C 标识符和数据类型 18 2.2.1 标识符 18 2.2.2 基本数据类型 19 2.2.3 其他数据类型 202.3 进制基础 21 2.3.1 二进制 21 2.3.2 八进制与十六进制 22 2.3.3 进制转换 222.4 常量与变量 23 2.4.1 常量 23 2.4.2 变量 252.5 运算符 26 2.5.1 算术运算符 26 2.5.2 赋值运算符 27 2.5.3 自增、自减运算符 28 2.5.4 关系运算符与逻辑运算符 28 2.5.5 条件运算符 29 2.5.6 逗号运算符 30 2.5.7 位运算 30 2.5.8 运算符的优先级与结合性 32 2.5.9 类型转换 332.6 C语言输入输出 34 2.6.1 字符/字符串数据输入输出 34 2.6.2 格式输入与输出 362.7 C 语言输入输出 402.8 在线题目求解 42习题 46 第3章 程序控制结构 493.1 引例与概述 49 3.1.1 引例 49 3.1.2 概述 503.2 选择结构 51 3.2.1 if语句及其使用 51 3.2.2 switch语句及其使用 573.3 循环结构 61 3.3.1 引例 61 3.3.2 三种循环语句 62 3.3.3 continue语句与break语句 66 3.3.4 在线做题基本程序结构 69 3.3.5 循环结构运用举例 743.4 在线题目求解 85习题 92
第4章 数组 1024.1 引例 1024.2 一维数组 103 4.2.1 一维数组基础 103 4.2.2 一维数组的运用 1054.3 二维数组 113 4.3.1 二维数组基础 114 4.3.2 二维数组的运用 116最4.4???STL之vector 118 4.4.1 STL之一维vector 118 4.4.2 STL之二维vector 1214.5 字符串与字符数组 122 4.5.1 字符串常量 122 4.5.2 字符数组 122 4.5.3 STL之string 1244.6 在线题目求解 131习题 145 第5章 函数 1625.1 引例与概述 162 5.1.1 引例 162 5.1.2 概述 1635.2 函数基本用法 165 5.2.1 函数的定义 165 5.2.2 函数的声明 165 5.2.3 函数的调用 1665.3 函数举例 1665.4 数组作为函数参数 170 5.4.1 数组元素作为实参 170 5.4.2 数组名作为函数参数 1705.5 引用 1715.6 递归函数 174 5.6.1 递归基础 174 5.6.2 典型递归问题 1755.7 变量的作用域与生命期 180 5.7.1 变量的作用域 180 5.7.2 变量的生命期 1815.8 编译预处理 182 5.8.1 宏定义 182 5.8.2 文件包含 182 5.8.3 条件编译 1835.9 在线题目求解 184习题 194 第6章 结构体 2016.1 引例 2016.2 结构体基础 203 6.2.1 结构体类型声明 203 6.2.2 结构体变量的定义及初始化 204 6.2.3 结构体变量的使用 2056.3 结构体数组 206 6.3.1 结构体数组的定义与初始化 206 6.3.2 结构体数组应用举例 2076.4 在线题目求解 209习题 215 第7章 指针 2227.1 引例与基础 222 7.1.1 引例 222 7.1.2 指针基础 2247.2 指针与数组 227 7.2.1 指针与一维数组 227 7.2.2 指针与二维数组 229 7.2.3 指针数组 230 7.2.4 堆内存分配 2317.3 指针与函数 232 7.3.1 指针参数 232 7.3.2 指针函数 234 7.3.3 函数指针 2357.4 结构体指针 2377.5 在线题目求解 240习题 245 第8章 链表 2508.1 引例与概述 250 8.1.1 引例 250 8.1.2 概述 2538.2 创建单链表 254 8.2.1 顺序链表 254 8.2.2 逆序链表 2558.3 单链表基本操作 256 8.3.1 基本操作的实现 256 8.3.2 基本操作的应用 2608.4 在线题目求解 264习题 272
第9章 程序设计竞赛基础 2789.1 递推与动态规划 2789.2 简单数学问题 2869.3 大整数运算 2889.4 搜索入门 2959.5 并查集 3049.6 常用算法 308习题 314
参考文献 322 IV
?大学生程序设计竞赛入门——C/C 程序设计(微课视频版)第2版 V
?目 ?录??
第4章 数组 1024.1 引例 1024.2 一维数组 103 4.2.1 一维数组基础 103 4.2.2 一维数组的运用 1054.3 二维数组 113 4.3.1 二维数组基础 114 4.3.2 二维数组的运用 116最4.4???STL之vector 118 4.4.1 STL之一维vector 118 4.4.2 STL之二维vector 1214.5 字符串与字符数组 122 4.5.1 字符串常量 122 4.5.2 字符数组 122 4.5.3 STL之string 1244.6 在线题目求解 131习题 145 第5章 函数 1625.1 引例与概述 162 5.1.1 引例 162 5.1.2 概述 1635.2 函数基本用法 165 5.2.1 函数的定义 165 5.2.2 函数的声明 165 5.2.3 函数的调用 1665.3 函数举例 1665.4 数组作为函数参数 170 5.4.1 数组元素作为实参 170 5.4.2 数组名作为函数参数 1705.5 引用 1715.6 递归函数 174 5.6.1 递归基础 174 5.6.2 典型递归问题 1755.7 变量的作用域与生命期 180 5.7.1 变量的作用域 180 5.7.2 变量的生命期 1815.8 编译预处理 182 5.8.1 宏定义 182 5.8.2 文件包含 182 5.8.3 条件编译 1835.9 在线题目求解 184习题 194 第6章 结构体 2016.1 引例 2016.2 结构体基础 203 6.2.1 结构体类型声明 203 6.2.2 结构体变量的定义及初始化 204 6.2.3 结构体变量的使用 2056.3 结构体数组 206 6.3.1 结构体数组的定义与初始化 206 6.3.2 结构体数组应用举例 2076.4 在线题目求解 209习题 215 第7章 指针 2227.1 引例与基础 222 7.1.1 引例 222 7.1.2 指针基础 2247.2 指针与数组 227 7.2.1 指针与一维数组 227 7.2.2 指针与二维数组 229 7.2.3 指针数组 230 7.2.4 堆内存分配 2317.3 指针与函数 232 7.3.1 指针参数 232 7.3.2 指针函数 234 7.3.3 函数指针 2357.4 结构体指针 2377.5 在线题目求解 240习题 245 第8章 链表 2508.1 引例与概述 250 8.1.1 引例 250 8.1.2 概述 2538.2 创建单链表 254 8.2.1 顺序链表 254 8.2.2 逆序链表 2558.3 单链表基本操作 256 8.3.1 基本操作的实现 256 8.3.2 基本操作的应用 2608.4 在线题目求解 264习题 272
第9章 程序设计竞赛基础 2789.1 递推与动态规划 2789.2 简单数学问题 2869.3 大整数运算 2889.4 搜索入门 2959.5 并查集 3049.6 常用算法 308习题 314
参考文献 322 IV
?大学生程序设计竞赛入门——C/C 程序设计(微课视频版)第2版 V
?目 ?录??