第1章 C语言程序设计概述 1
1.1C语言概述 1
1.1.1程序设计概述 1
1.1.2C语言的发展 2
1.1.3C语言的特点 3
1.2简单的C程序构成及格式 4
1.2.1C程序实例 4
1.2.2C程序的基本组成 5
1.3C语言的执行过程及上机步骤 6
1.3.1C语言的执行过程 6
1.3.2C语言开发环境介绍 7
1.3.3C语言的上机步骤 11
本章小结 11
实验 11
思考与练习 13
第2章 基本数据类型、运算符及表达式 15
2.1C语言的数据类型 15
2.2标识符、常量和变量 16
2.2.1标识符 16
2.2.2常量 18
2.2.3变量 19
2.3整型数据 20
2.3.1整型常量 20
2.3.2整型变量 21
2.4实型数据 23
2.4.1实型常量 23
2.4.2实型变量 24
2.5字符型数据 25
2.5.1字符型常量 25
2.5.2字符型变量 27
2.5.3字符串常量 27
2.6C语言的运算符和表达式 28
2.6.1C语言运算符简介 28
2.6.2算术运算符及算术表达式 29
2.6.3关系运算符及关系表达式 32
2.6.4逻辑运算符及逻辑表达式 33
2.6.5条件运算符及条件表达式 35
2.6.6赋值运算符及赋值表达式 36
2.6.7逗号运算符及逗号表达式 37
2.7数据类型转换 38
2.7.1自动类型转换 38
2.7.2强制类型转换 39
本章小结 40
实验 41
思考与练习 43
第3章 基本输入输出语句及顺序结构程序设计 48
3.1C语言的语句 48
3.2数据输入输出的基本概念 50
3.3字符数据的输入输出 50
3.3.1字符输入函数getchar 50
3.3.2字符输出函数putchar 50
3.4格式输入输出 51
3.4.1格式输入函数scanf 51
3.4.2格式输出函数printf 56
3.5C程序的三种基本结构 64
3.6综合应用举例 65
本章小结 68
实验 69
思考与练习 71
第4章 选择结构程序设计 72
4.1选择结构的引出 72
4.2if语句 73
4.2.1if语句的三种形式 73
4.2.2if语句的嵌套 77
4.3switch语句 79
4.4综合应用举例 82
本章小结 86
实验 87
思考与练习 89
第5章 循环结构程序设计 91
5.1循环结构的引出 91
5.2goto语句以及goto语句构成的循环 92
5.3while语句 93
5.4do-while语句 94
5.5for语句 96
5.6break语句和continue语句 98
5.6.1break语句 98
5.6.2continue语句 99
5.7几种循环语句的比较 100
5.8循环的嵌套 102
5.9综合应用举例 103
本章小结 106
实验 106
思考与练习 109
第6章 数组 114
6.1数组的引出 114
6.2一维数组 115
6.2.1一维数组的定义 115
6.2.2一维数组的引用 116
6.2.3一维数组的初始化 118
6.2.4一维数组的应用举例 119
6.3二维数组及多维数组 121
6.3.1二维数组的定义 121
6.3.2二维数组的引用 123
6.3.3二维数组的初始化 124
6.3.4二维数组的应用举例 126
6.4字符数组及字符串 128
6.4.1字符数组 128
6.4.2字符串 131
6.4.3字符串处理函数 132
6.4.4字符数组应用举例 136
6.5综合应用举例 138
本章小结 140
实验 140
思考与练习 144
第7章 函数及编译预处理 152
7.1函数的引出 152
7.1.1模块化设计思想 152
7.1.2函数的分类 153
7.2函数的定义 154
7.2.1无参函数 155
7.2.2有参函数 156
7.2.3空函数 157
7.3函数的参数及其返回值 158
7.3.1形式参数和实际参数 158
7.3.2函数间参数传递 160
7.3.3函数的返回值 161
7.4函数的调用 165
7.4.1函数调用 166
7.4.2函数调用的方式 166
7.4.3被调用函数的声明 167
7.4.4函数的嵌套调用 168
7.4.5函数的递归调用 168
7.5变量的作用域及存储类别 171
7.6编译预处理 176
7.6.1宏定义 176
7.6.2文件包含 180
7.7综合应用举例 181
本章小结 183
实验 183
思考与练习 185
第8章 指针 190
8.1指针的引出 190
8.2地址和指针的概念 190
8.3指针和指针变量 191
8.3.1指针和指针变量 191
8.3.2指针变量的定义及初始化 192
8.3.3指针变量的基本运算 196
8.4指针和数组 198
8.4.1指向数组的指针 198
8.4.2字符指针 202
8.4.3指针数组 204
8.5指针与函数 206
8.5.1指针作函数的参数 206
8.5.2指针型函数 210
8.5.3指向函数的指针 211
8.6综合应用举例 212
本章小结 214
实验 214
思考与练习 215
第9章 结构体及共用体 221
9.1问题的引出 221
9.2结构体 223
9.2.1结构体类型的定义 223
9.2.2结构体变量的初始化 225
9.2.3结构体变量的引用 226
9.3结构体数组 228
9.3.1结构体数组的定义 228
9.3.2结构体数组的初始化 229
9.3.3结构体数组的应用 229
9.4共用体 232
9.4.1共用体的概念及特点 232
9.4.2共用体类型的定义 233
9.4.3共用体变量的引用 233
9.5枚举 234
9.6用typedef定义类型 236
9.7综合应用举例 237
本章小结 238
实验 239
思考与练习 239
第10章 位运算 242
10.1位运算符和位运算 242
10.1.1按位与运算符(&) 243
10.1.2按位或运算符(|) 243
10.1.3按位异或运算符(^) 244
10.1.4按位取反运算符(~) 245
10.1.5左移运算符(<<) 246
10.2位段 246
10.3综合应用举例 249
本章小结 250
实验 250
思考与练习 251
第11章 文件 252
11.1文件概述 252
11.1.1文件的概念 252
11.1.2文件的分类 253
11.1.3文件类型指针 253
11.1.4缓冲文件系统和非缓冲文件系统 253
11.2文件的操作 254
11.2.1文件的打开 254
11.2.2文件的关闭 256
11.2.3文件的读写 256
11.2.4文件的定位 262
11.3综合应用举例 263
本章小结 265
实验 265
思考与练习 266
第12章 面向对象程序设计基础 267
12.1面向对象程序设计基本概念 267
12.2类和对象 270
12.3数据的抽象和封装 273
12.4继承性 275
12.5多态性 277
本章小结 279
实验 280
思考与练习 280
第13章 学生管理系统综合实训 281
13.1系统设计要求 281
13.2系统设计及函数实现 281
13.2.1系统设计 281
13.2.2函数设计 282
13.3参考程序 285
13.4运行结果 302
本章小结 303
实验 303
思考与练习 304
附录1 Turbo C编译错误信息 305
附录2 C语言常用关键字及说明 311
附录3 ASCII代码表 312
附录4 C语言运算符及优先级 313
附录5 Turbo C常用库函数 315
参考文献 323