图书目录

目录

第1章C语言及程序设计概述1

1.1C语言简介1

1.1.1C语言的发展过程1

1.1.2C语言的主要特点1

1.2C语言程序的结构3

1.2.1C语言程序的结构及其主要特点3

1.2.2标识符与关键字5

1.3C语言编译工具简介7

1.3.1C语言程序实现的步骤7

1.3.2Turbo C 2.0编译工具简介7

1.3.3Visual C++ 6.0编译工具简介11

1.4如何学习C语言15

1.4.1学习C语言的理由15

1.4.2学好C语言的步骤17

1.5编程实践18

任务1: 输出金字塔图案18

任务2: 打印输出华氏和摄氏的温度对照表19

习题20第2章数据类型、运算符与表达式22

2.1常量和变量22

2.1.1常量22

2.1.2变量25

2.2基本数据类型27

2.2.1整数类型27

2.2.2字符型28

2.2.3实数类型29

2.3数据类型的转换30

2.3.1自动类型转换31

2.3.2强制类型转换33

2.4运算符和表达式34

2.4.1算术运算符和算术表达式34

2.4.2关系运算符和关系表达式39

2.4.3逻辑运算符和逻辑表达式42

2.4.4赋值运算符和赋值表达式43

2.4.5位运算符与位运算45

2.4.6条件运算符与条件表达式49

2.4.7逗号运算符与逗号表达式50

2.4.8求字节数运算符51

2.4.9特殊运算符52

2.5运算符的优先级和结合性52

2.5.1运算符的优先级52

2.5.2运算符的结合性53

2.6编程实践55

任务: 分析MD5散列算法的基本运算55

习题56第3章算法概念与顺序结构程序设计64

3.1算法简介64

3.1.1算法的概念64

3.1.2算法的常用描述方法65

3.2C语句概述67

3.3C语言的基本输入与输出69

3.3.1字符输入输出函数69

3.3.2格式输入输出函数71

3.4顺序结构程序设计80

3.4.1顺序结构程序设计思想80

3.4.2顺序结构程序设计举例80

3.5编程实践82

任务: 计算正弦函数的面积82

习题83第4章选择结构程序设计87

4.1if语句87

4.1.1单分支if语句87

4.1.2双分支if语句88

4.1.3多分支if语句89

4.1.4if 语句的嵌套91

4.1.5条件运算符和条件表达式93

4.2switch语句93

4.2.1switch语句93

4.2.2switch语句的嵌套96

4.3选择结构程序设计举例97

4.4编程实践99

任务: 计算个人所得税99

习题100第5章循环结构程序设计113

5.1while和dowhile循环结构113

5.1.1while语句的一般形式113

5.1.2while语句使用说明114

5.1.3dowhile语句的一般形式115

5.1.4dowhile语句使用说明 116

5.2for循环结构和循环的嵌套116

5.2.1for循环语句的一般形式117

5.2.2for循环语句使用说明118

5.2.3循环嵌套的形式119

5.2.4嵌套循环的说明119

5.3流程转向语句120

5.3.1goto语句120

5.3.2break语句121

5.3.3continue语句122

5.4循环结构程序设计举例123

5.4.1确定循环次数与不确定循环次数123

5.4.2选择循环语句125

5.4.3提前结束循环127

5.4.4其他应用举例127

5.5编程实践128

任务: 验证哥德巴赫猜想128

习题129第6章数组136

6.1一维数组136

6.1.1一维数组的定义136

6.1.2一维数组元素的引用136

6.1.3一维数组的初始化137

6.1.4一维数组应用举例 138

6.2多维数组140

6.2.1二维数组的定义140

6.2.2二维数组元素的引用141

6.2.3二维数组的初始化142

6.2.4二维数组使用举例142

6.3字符数组145

6.3.1字符数组的定义145

6.3.2字符数组的初始化146

6.3.3字符串与字符串结束标志147

6.3.4字符数组的引用与输入输出147

6.3.5字符串处理函数148

6.3.6字符数组使用举例153

6.4数组应用举例155

6.5编程实践158

任务: 多规格打印万年历158

习题160第7章函数165

7.1函数的定义165

7.1.1函数概述165

7.1.2函数类型165

7.1.3函数定义168

7.2函数参数和返回值170

7.2.1形式参数和实际参数170

7.2.2函数的返回值174

7.3函数的调用175

7.3.1函数调用175

7.3.2函数声明175

7.4函数的嵌套调用和递归调用176

7.4.1函数的嵌套调用176

7.4.2函数的递归调用178

7.5变量的作用域181

7.6变量的存储类别184

7.7编程实践186

任务1: 正(余)弦曲线演示器186

任务2: 杨辉三角形188

习题190第8章指针196

8.1指针和地址196

8.2指针变量197

8.2.1指针变量的定义197

8.2.2指针变量赋值198

8.2.3指针运算符与指针表达式200

8.2.4指针变量的引用 202

8.2.5指针变量作为函数的参数202

8.3指针和数组206

8.3.1指向数组的指针206

8.3.2通过指针引用数组元素207

8.3.3数组名作为函数参数209

8.3.4指向多维数组的指针和指针变量212

8.4指针和字符串216

8.4.1字符串的表示216

8.4.2字符串指针作为函数参数218

8.4.3字符数组与字符串指针的区别219

8.5指针和函数221

8.5.1函数的指针221

8.5.2用指向函数的指针作为函数参数222

8.5.3返回指针值的函数224

8.6指向指针的指针225

8.6.1指向指针的指针简介225

8.6.2指针数组226

8.6.3指针数组作为main函数的参数228

8.7编程实践229

任务1: 黑白棋子交换229

任务2: 班干部值日安排231

习题234第9章结构体和共用体239

9.1结构体239

9.1.1结构体类型的定义239

9.1.2结构体变量的定义241

9.1.3结构体变量的引用243

9.1.4结构体变量的赋值244

9.2结构体数组与结构体指针246

9.2.1结构体数组246

9.2.2指向结构体的指针249

9.2.3结构体作为函数的参数252

9.2.4结构体举例256

9.3链表258

9.3.1链表概述258

9.3.2处理动态链表所需的函数259

9.3.3链表的基本操作262

9.4共用体266

9.4.1共用体类型的定义267

9.4.2共用体类型变量的定义267

9.4.3共用体变量的引用268

9.4.4共用体变量的初始化268

9.5枚举类型和自定义类型270

9.5.1枚举类型的定义271

9.5.2枚举变量的定义和初始化271

9.5.3枚举数据的运算272

9.5.4枚举数据的输入输出273

9.5.5枚举变量举例274

9.5.6用typedef定义类型276

9.6编程实践279

任务1: 三天打鱼两天晒网279

任务2: 航班订票系统280

习题289第10章文件294

10.1文件概述294

10.1.1文件的分类294

10.1.2文件的编码形式294

10.1.3文件的读写方式295

10.2文件的基本操作296

10.2.1文件的打开与关闭296

10.2.2文件的读和写298

10.3文件操作举例303

10.4编程实践310

任务: 精挑细选310

习题312第11章预处理命令314

11.1宏定义314

11.1.1无参宏定义314

11.1.2带参数的宏定义318

11.2“文件包含”处理322

11.3条件编译323

11.4编程实践325

任务: 串化运算325

习题326第12章C++语言的特性331

12.1从C到C++331

12.2C++程序基本结构332

12.3面向对象编程(OOP)思想334

12.4C++对C的扩充335

12.4.1C++的输入输出335

12.4.2用const定义常变量337

12.4.3函数原型声明337

12.4.4函数的重载338

12.4.5函数模板340

12.4.6变量的定义341

12.4.7有默认参数的函数341

12.4.8内置函数342

12.4.9作用域运算符342

12.4.10变量的引用342

12.4.11运算符new和delete343

12.4.12命名空间namespace344

12.4.13using声明和using编译指令344

12.4.14C++增强的特性345

12.5面向对象编程特性347

12.5.1封装性347

12.5.2继承和派生351

12.5.3多态和虚函数357

12.6编程实践360

任务: 学生成绩管理程序360

习题369第13章综合案例实训373

13.1五子棋游戏项目实训373

13.1.1功能模块设计373

13.1.2数据结构设计374

13.1.3函数功能描述374

13.1.4系统数据流程图376

13.1.5程序实现377

13.1.6程序运行398

13.2ATM(自动取款机)案例实训398

13.2.1功能模块399

13.2.2数据结构分析399

13.2.3函数功能描述399

13.2.4系统数据流程图400

13.2.5代码实现400

13.2.6运行结果416附录A常用字符与ASCII对照表417附录BC语言常用语法提要418

B.1标识符418

B.2常量418

B.3表达式418

B.4数据定义419

B.5函数定义420

B.6变量的初始化420

B.7语句420

B.8预处理命令421附录CC语言的常用库函数422

C.1输入输出函数422

C.2数学函数423

C.3字符函数和字符串函数424

C.4动态存储分配函数425参考文献426