目录 1
第1章 概述 1
1.1 程序设计语言 1
1.1.1 计算机语言 1
1.1.2 程序设计语言的发展 1
1.2 C程序设计语言 2
1.2.1 C语言的发展历史 2
1.2.2 C语言的标准与版本 3
1.2.3 C语言的特点 3
1.3 C语言的基本语法成分 4
1.3.1 字符集 4
1.3.2 标识符 4
1.3.3 运算符 6
1.4 C语言程序的组成 6
1.4.1 简单的C程序介绍 6
1.4.2 C语言程序的结构 8
1.4.3 C程序的书写 9
习题1 10
第2章 基本数据类型、运算符及表达式 11
2.1 C的基本数据类型 11
2.1.1 数据类型 11
2.1.2 C语言数据类型简介 11
2.1.3 C的基本数据类型 12
2.2 常量 13
2.2.1 整型常量 13
2.2.2 实型常量 13
2.2.3 符号常量 14
2.2.4 字符型常量 14
2.3 变量 16
2.3.1 变量名 16
2.3.2 变量类型 16
2.4.1 C运算符简介 17
2.4 运算符及表达式 17
2.3.3 变量值 17
2.4.2 算术运算符与算术表达式 18
2.4.3 赋值运算符与赋值表达式 21
2.4.4 逗号运算符和逗号表达式 23
2.4.5 不同类型数据间的混合运算与类型转换 24
习题2 25
第3章 算法和基本程序设计 27
3.1 算法 27
3.1.1 算法的概念 27
3.1.2 算法的评价标准 28
3.1.3 算法的表示 29
3.2 结构化程序设计的方法 31
3.3 程序的基本结构 31
3.3.1 顺序结构 32
3.3.2 选择结构 32
3.3.3 循环结构 33
3.4 顺序结构程序设计 34
3.5 数据的输入与输出 35
3.5.1 C语言中数据的输入与输出 35
3.5.2 字符数据的输入与输出 36
3.5.3 格式输入与输出 38
3.6 C程序的上机步骤 44
3.6.1 C程序的上机步骤 44
3.6.2 Turbo C 2.0简介 45
习题3 47
第4章 选择分支结构程序设计 48
4.1 关系运算 48
4.1.1 关系运算符 48
4.1.2 关系表达式 48
4.2 逻辑运算 49
4.2.1 逻辑运算符 49
4.2.2 逻辑表达式 50
4.3.1 if语句的一般形式 51
4.3 二路分支——if语句 51
4.3.2 if语句的嵌套 56
4.4 条件运算符与表达式 58
4.5 多路分支——switch语句 58
4.5.1 switch语句的一般形式 58
4.5.2 switch语句的嵌套 60
4.6 选择分支结构程序举例 60
习题4 64
第5章 循环结构程序设计 66
5.1 while语句 66
5.2 do-while语句 68
5.3 for语句 70
5.4 goto语句 73
5.5 循环的嵌套 74
5.6 break和continue语句 76
5.6.1 continue语句 76
5.6.2 break语句 77
5.7 循环结构程序举例 79
5.8 C程序的基本调试技术 82
习题5 83
第6章 函数 85
6.1 概述 85
6.1.1 C程序基本结构 85
6.1.2 函数分类 85
6.2 函数的定义 86
6.3 函数的参数和函数的返回值 88
6.3.1 形式参数和实际参数 88
6.3.2 函数的返回值 89
6.4 函数的调用 90
6.4.1 函数调用的一般形式 90
6.4.2 函数调用的方式 91
6.5 函数声明和函数原型 92
6.6 函数的嵌套调用 93
6.7 函数的递归调用 95
6.8.1 局部变量 98
6.8 变量的作用域 98
6.8.2 全局变量 99
6.9 变量的存储类型 101
6.9.1 静态存储方式和动态存储方式 101
6.9.2 静态局部变量 101
6.9.3 自动变量 102
6.9.4 寄存器变量 103
6.9.5 静态全局变量和非静态全局变量 104
6.9.6 存储类型小结 105
6.10 内部函数和外部函数 106
6.10.1 内部函数 106
6.10.2 外部函数 106
6.11 多文件程序的运行 107
习题6 108
7.1.1 一维数组的定义和初始化 112
第7章 数组 112
7.1 一维数组 112
7.1.2 一维数组元素的引用 113
7.1.3 一维数组应用举例 114
7.2 二维数组 117
7.2.1 二维数组的定义和初始化 117
7.2.2 二维数组元素的引用 118
7.2.3 二维数组应用举例 119
7.3 字符数组 125
7.3.1 字符数组的定义和引用 125
7.3.2 字符数组的输入输出 126
7.3.3 字符串处理函数 128
7.3.4 字符数组应用举例 131
7.3.5 容易出的错误 133
习题7 134
8.1 结构体类型定义 137
第8章 结构体与共用体 137
8.2 结构体变量 138
8.2.1 结构体变量的定义与初始化 138
8.2.2 结构体变量的引用 140
8.3 结构体数组 142
8.3.1 结构体数组的定义与初始化 142
8.3.2 结构体数组元素的引用 143
8.4 结构体和函数 145
8.4.1 结构体作函数参数 145
8.4.2 返回值为结构体类型的函数 146
8.5 共用体 147
8.5.1 共用体类型定义 147
8.5.2 共用体变量定义与引用 148
8.5.3 共用体应用举例 150
8.6 枚举类型 152
8.7 typedef语句 154
习题8 155
9.1.1 变量的地址 157
第9章 指针 157
9.1 地址和指针的概念 157
9.1.2 直接访问和间接访问 158
9.1.3 指针的概念 158
9.2 指针变量 159
9.2.1 指针变量的定义 159
9.2.2 指针变量的引用 160
9.2.3 实现引用传递 162
9.3 指针与数组 165
9.3.1 指向数组元素的指针 165
9.3.2 指针数组 173
9.3.3 多维数组和指向分数组的指针 176
9.4 结构体与指针 181
9.4.1 指向结构体的指针变量 181
9.4.2 用指向结构体的指针作函数参数 182
9.5.1 返回值为指针类型的函数 183
9.5 指针与函数 183
9.5.2 指向函数的指针和函数参数 184
9.6 指针与链表 187
9.6.1 存储空间的分配和释放 187
9.6.2 动态数据结构——链表 188
习题9 195
第10章 编译预处理及位运算 198
10.1 文件包含处理——#include 198
10.2 宏定义——#define 200
10.2.1 不带参数的宏定义 200
10.2.2 带参数的宏定义 201
10.3 条件编译 203
10.4 位运算符和位运算 204
10.5 位段 206
10.6 位运算举例 208
习题10 209
11.1.1 文件的概念及分类 213
第11章 文件 213
11.1 文件的概述 213
11.1.2 文件的操作流程 214
11.1.3 文件缓冲区 215
11.2 文件类型的指针 215
11.3 文件的打开与关闭 216
11.3.1 打开文件fopen函数 216
11.3.2 文件关闭函数fclose 218
11.4 文件的顺序读写 218
11.4.1 字符读写函数fgetc和fputc 219
11.4.2 字符串读写函数fgets和fputs 222
11.4.3 格式化读写函数fscanf和fprintf 224
11.4.4 数据块读写函数fread和fwrite 225
11.5 文件的随机读写 228
11.5.1 rewind函数 228
11.5.2 fseek函数 229
11.6 其他读写函数 230
11.5.3 ftell函数 230
11.7 出错的检测 231
11.7.1 feof函数 231
11.7.2 ferror函数 232
11.7.3 clearerr函数 232
11.8 程序举例 233
习题11 245
第12章 C语言图形程序设计 246
12.1 概述 246
12.2 图形模式的初始化和检测函数 246
12.3 基本绘画 249
12.3.1 画点函数和定位函数 249
12.3.2 画线函数和设定线型函数 250
12.3.3 画圆和椭圆函数 252
12.4.1 设定填充方式函数 253
12.4 图形填充 253
12.4.2 图形填充函数 254
12.5 图形模式下的文本输出 255
12.5.1 文本字符的输出函数 256
12.5.2 字体格式和输出方式的设置 256
12.6 视口和视口函数 258
12.7 屏幕操作 260
12.7.1 屏幕颜色的设置 260
12.7.2 cleardevice()清屏函数 261
12.7.3 激活页函数 261
12.7.4 图像处理函数 262
12.7.5 键盘对屏幕的控制操作 264
习题12 265
第13章 面向对象程序设计简介 269
13.1 面向对象程序设计 269
13.1.1 面向对象程序设计的产生背景 269
13.1.2 面向对象程序设计的基本术语 270
13.1.3 面向对象的软件开发过程 273
13.2 Windows编程基础知识 276
13.2.1 事件驱动的概念 277
13.2.2 句柄 278
13.2.3 Windows下的消息机制 278
13.2.4 Windows应用程序的基本组成 281
13.3 C++ 281
13.3.1 C++的起源与发展 281
13.3.2 C++语言的特点 281
13.3.3 I/O流、注释和书写格式 282
13.3.4 编写与运行你的第一个C++程序——Hello World.cpp 283
13.4 Visual C++ 284
13.4.1 MFC概述 284
13.4.2 MFC消息映射的工作方式 285
13.4.3 用AppWizard生成程序框架 286
13.4.4 一个完整的Windows应用程序 289
13.4.5 如何获取帮助 293
13.5 C# 294
13.5.1 Microsoft.Net简介 294
13.5.2 C#的特点 296
13.5.3 C#的编译流程 296
13.5.4 一个简单C#程序 297
习题13 300
附录 301
附录Ⅰ 上机实验 301
附录Ⅱ 常用字符与ASCII码对照表 309
附录Ⅲ C语言中的关键字表 312
附录Ⅳ C语言中的运算符的优先级与结合性一览表 312
附录Ⅴ C库函数 313
附录Ⅵ Turbo C 2.0菜单介绍 321
附录Ⅶ Turbo C 2.0编译错误信息介绍 333
主要参考文献 339