第1章 初识C+语言 1
1.1 集成环境及菜单的使用 2
1.2 程序的输入和调试 5
习题1 9
第2章 C+程序设计语言基础 11
2.1 C++语言简介 11
2.2 数据类型 17
2.3 常量和变量 18
2.4 函数与表达式 22
2.5 数制 31
2.6 ASCII码 34
习题2 35
第3章 顺序结构程序设计 37
3.1 赋值语句 38
3.2 输入语句 39
3.3 输出语句 39
3.4 应用实例 41
习题3 44
第4章 选择结构程序设计 46
4.1 逻辑运算及布尔表达式 46
4.2 条件(if)语句 48
4.3 if语句的嵌套 53
4.4 switch语句 55
习题4 60
第5章 循环语句 63
5.1 while循环语句 63
5.2 do-while循环语句 68
5.3 for循环语句 73
5.4 多重循环 78
习题5 83
第6章 数组 87
6.1 认识数组 87
6.2 一维数组 88
6.3 二维数组 96
6.4 多维数组 100
6.5 字符数组 101
6.6 数组的综合应用实例 104
习题6 107
第7章 函数 113
7.1 函数的定义 113
7.2 函数的类型和返回值 115
7.3 函数的调用与参数的传递 116
7.4 变量及其作用域 120
7.5 函数的应用 122
7.6 递归函数 124
习题7 129
第8章 字符串 132
8.1 string类型的初始化 132
8.2 string类型的基本操作 134
8.3 应用实例 138
习题8 140
第9章 指针 143
9.1 指针变量的定义 143
9.2 指针变量的基本操作 145
9.3 指针的应用 150
习题9 152
第10章 结构与联合体 154
10.1 结构的定义 154
10.2 访问结构成员 157
10.3 结构应用举例 160
10.4 结构与链表 164
10.5 联合体 171
习题10 173
第11章 文件 176
11.1 文件的类型 176
11.2 文本文件的概念 177
11.3 文件类型变量的定义及引用 177
11.4 文件的重定向 183
习题11 187
第12章 数据结构 189
12.1 线性表 189
12.2 栈 192
12.3 队列 196
12.4 树 197
12.5 二分法 201
习题12 204
第13章 常用算法 207
13.1 穷举法 207
13.2 排序算法 209
13.3 回溯算法 213
13.4 递推法 215
13.5 高精度数值处理 219
13.6 动态规划 224
习题13 227
第14章 编译宏指令及编程小技巧 228
14.1 编译宏指令 228
14.2 编程小技巧 240
习题14 247
第15章 NOI Linux操作系统 249
15.1 NOI Linux系统的介绍和安装 249
15.2 NOI Linux的编程操作 254
15.3 NOI Linux系统下评测及注意事项 262
15.4 对拍 269
习题15 276
习题参考答案 278
第二十四届全国青少年信息学奥林匹克联赛初赛提高组C++语言试题 308
附录 318
附录一 ASCII码表 318
附录二 C++常见出错信息 319
附录三 C++常用词汇英汉对照 320
附录四 C++程序设计中的常用数学知识 323
参考文献 326