前言
第1章 C语言概述1
1.1 C语言的发展与特点1
1.1.1 C语言的发展1
1.1.2 C语言的特点2
1.2 程序设计的基本概念4
1.2.1 程序4
1.2.2 程序设计4
1.2.3 算法5
1.2.4 数据结构6
1.3 C语言的字符集与标识符6
1.4 C程序举例7
1.5 本章小结11
习题11
第2章 数据类型12
2.1 C的数据类型12
2.2 常量12
2.2.1 整型常量12
2.2.2 实型常量13
2.2.3 字符常量13
2.2.4 字符串常量15
2.2.5 符号常量15
2.3 变量16
2.3.1 整型变量17
2.3.2 实型变量20
2.3.3 字符变量21
2.3.4 变量赋初值22
2.4 库函数的使用23
2.5 本章小结24
习题24
第3章 C语言的运算符和表达式25
3.1 C语言运算符简介25
3.1.1 C语言运算符的种类及功能25
3.1.2 C语言运算符的优先级及结合性27
3.2 C语言的运算符28
3.2.1 算术运算符28
3.2.2 自增与自减运算符29
3.3 算术表达式31
3.3.1 算术表达式的运算31
3.3.2 算术表达式的书写规则32
3.4 表达式中数据间的混合运算与类型转换32
3.5 赋值运算符及复合赋值运算符35
3.5.1 赋值运算符35
3.5.2 复合赋值运算符36
3.6 逗号运算符及逗号表达式37
3.7 程序举例37
3.8 本章小结38
习题39
第4章 顺序结构程序设计40
4.1 结构化程序设计简介40
4.2 求华氏100℉对应的摄氏温度程序的实现41
4.2.1 程序解析41
4.2.2 C程序中的语句42
4.3 赋值语句44
4.4 数据的输入/输出45
4.4.1 字符输入/输出函数45
4.4.2 格式输出函数47
4.4.3 格式输入函数52
4.5 程序举例54
4.6 本章小结58
习题58
第5章 分支结构程序设计59
5.1 实数排序程序的实现59
5.1.1 程序解析59
5.1.2 if语句59
5.1.3 if…else语句61
5.1.4 if语句的嵌套62
5.2 简单英文星期转换程序的实现67
5.2.1 程序解析67
5.2.2 switch语句68
5.2.3 break语句在switch语句中的作用70
5.3 程序举例73
5.4 本章小结81
习题81
第6章 循环结构程序设计83
6.1 自然数1到100求和程序的实现83
6.1.1 程序解析83
6.1.2 while语句83
6.2 do…while语句85
6.3 for语句87
6.4 break和continue语句91
6.4.1 break语句91
6.4.2 continue语句92
6.5 循环的嵌套92
6.6 本章小结94
习题94
第7章 函数95
7.1 自然数1到100求和程序的实现95
7.1.1 程序解析95
7.1.2 函数的定义96
7.2 函数参数与函数值98
7.2.1 形式参数和实际参数98
7.2.2 函数的返回值100
7.3 函数的调用101
7.3.1 函数调用的方式101
7.3.2 对被调用函数的声明102
7.3.3 函数的嵌套调用106
7.3.4 函数的递归调用107
7.4 变量的作用域111
7.4.1 局部变量111
7.4.2 全局变量113
7.5 变量的存储类型114
7.5.1 变量的动态与静态存储方式115
7.5.2 局部变量的存储类型115
7.5.3 全局变量的存储类型117
7.6 内部函数与外部函数118
7.7 本章小结119
习题119
第8章 数组120
8.1 输出fibonacci数列的前20项程序的实现120
8.1.1 程序解析120
8.1.2 一维数组的定义及初始化121
8.1.3 一维数组的使用122
8.2 找出矩阵中最大值所在的位置125
8.2.1 程序解析125
8.2.2 二维数组的概念126
8.2.3 二维数组的定义127
8.2.4 多维数组的定义128
8.2.5 二维数组及多维数组的初始化130
8.3 字符数组与字符串133
8.3.1 程序解析133
8.3.2 字符数组及其初始化133
8.3.3 字符串的输入136
8.3.4 字符串的输出137
8.3.5 二维字符数组137
8.4 数组作为函数的参数143
8.4.1 数组元素作为函数的参数143
8.4.2 数组名作为函数的参数144
8.5 程序举例145
8.6 本章小结150
习题150
第9章 指针151
9.1 寻找保险箱密码程序的实现151
9.1.1 程序解析151
9.1.2 指针的概念152
9.1.3 指针变量的定义与初始化154
9.1.4 指针运算156
9.1.5 多级指针159
9.2 指针与函数160
9.2.1 指针作为函数参数160
9.2.2 指针函数163
9.2.3 指向函数的指针164
9.3 指针与数组167
9.3.1 指向一维数组的指针168
9.3.2 二维数组与多维数组的指针表示法170
9.4 指针与字符串176
9.4.1 字符串的指针表示法176
9.4.2 字符串数组178
9.5 指针数组与命令行参数178
9.5.1 指针数组178
……
第10章 编译预处理命令188
第11章 结构体与共用体196
第12章 文件223
第13章 位运算244
附录A ASCII码表259
附录B C语言常用库函数260
附录C C语言的运行环境和运行过程265
参考文献271