目录 1
第一章 C语言程序设计基础知识 1
1.1概述 1
1.1.1信息的表示 1
1.1.2计算机系统的基本组成 6
1.2算法及其表示 9
1.2.1算法的概念和特点 9
1.2.2算法的表示 9
1.3.2C语言的标识符与关键字 12
1.3.1C语言的发展历史及特点 12
1.3C语言基本知识 12
1.3.3C语言的基本结构 13
习题一 15
第二章 基本数据类型及其运算 17
2.1基本数据类型 17
2.2常量与变量 18
2.2.1常量 18
2.2.2变量 22
2.3.1算术运算符和算术表达式 23
2.3运算符与表达式 23
2.3.2赋值运算符和赋值表达式 24
2.3.3自增和自减运算符 27
2.3.4逗号运算符和逗号表达式 29
2.3.5位运算符 29
2.3.6其他运算符 31
2.3.7混合运算 32
习题二 34
3.1基本语句 36
第三章 顺序结构程序设计 36
3.2赋值语句 37
3.3数据的输入输出 37
3.3.1格式输出函数printf() 37
3.3.2格式输入函数scanf() 42
3.3.3字符的输入、输出函数getchar()和putchar() 45
3.4顺序结构程序设计示例 45
习题三 47
4.2.1逻辑运算符 50
4.2逻辑运算符和逻辑表达式 50
4.1.2关系表达式 50
4.1.1关系运算符 50
4.1关系运算符和关系表达式 50
第四章 选择结构程序设计 50
4.2.2逻辑表达式 51
4.3条件运算符和条件表达式 52
4.4if语句 52
4.4.1if语句格式1 52
4.4.2if语句格式2 53
4.4.3if语句的嵌套 54
4.4.4if语句格式3 55
4.5switch语句 56
4.5.1switch语句 56
4.5.2break语句(也称为中断语句) 57
4.6goto语句 57
4.7选择结构程序设计示例 57
习题四 60
第五章 循环结构程序设计 63
5.1循环和循环体 63
5.2while循环结构 63
5.3do-while循环结构 64
5.4for循环结构 65
5.5几种循环结构的比较 66
5.6continue语句 68
5.7循环结构的嵌套 68
5.8循环结构程序设计示例 70
习题五 74
第六章 数组 78
6.1概述 78
6.2.2数组的维数 79
6.2.3数组的定义 79
6.2.1数组和数组元素 79
6.2数组、数组元素和数组的维数 79
6.2.4数组元素的引用 80
6.3数值型数组 80
6.3.1数值型数组的初始化 81
6.3.2数值型数组的输入和输出 81
6.3.3数值型数组示例 82
6.4字符型数组 86
6.4.1字符型数组的初始化 87
6.4.2字符型数组的输入和输出 87
6.4.3字符串函数 89
6.5字符型数组示例 91
习题六 92
第七章 函数 95
7.1函数的概念 95
7.2函数的定义形式 95
7.3函数的调用和函数值的返回 97
7.3.1函数的参数 97
7.3.2函数的调用形式 98
7.3.4函数的声明(declaration) 99
7.3.3函数的返回 99
7.3.5函数的嵌套调用 100
7.4递归函数和递归调用 101
7.5变量的作用域 103
7.5.1局部变量 103
7.5.2全局变量 104
7.6变量的存储类别 105
7.8编译预处理 108
7.8.1宏定义 108
7.7内部函数和外部函数 108
7.8.2文件包含 110
7.8.3条件编译 111
7.9函数应用示例 112
习题七 115
第八章 指针 118
8.1指针和指针变量 118
8.1.1地址与指针 118
8.1.2指向变量的指针变量 118
8.1.3指针的运算 120
8.1.4指针变量作为函数参数 122
8.2数组的指针表示 123
8.2.1一维数组的指针表示 123
8.2.2二维数组的指针表示 125
8.2.3字符串的指针表示 128
8.2.4数组作为函数参数时的指针表示 130
8.3指针数组 132
8.3.1指针数组的定义 132
8.3.2指针数组的应用 133
8.4指针变量的指针 134
8.5.1函数指针变量的定义与应用 135
8.5函数的指针 135
8.5.2用函数的指针作函数的参数 136
8.6指针函数 137
8.7指针应用示例 137
习题八 140
第九章 结构体、共用体和枚举 144
9.1结构体的基本概念 144
9.1.1结构体类型及变量的定义 144
9.1.2结构体变量初始化及引用 146
9.2结构体数组 148
9.3利用结构体和指针处理动态链表 151
9.3.1单向链表的结构体 152
9.3.2建立链表 152
9.3.3链表的遍历 154
9.3.4链表的删除操作 155
9.3.5链表的插入操作 156
9.4共用体 159
9.4.1共用体类型及变量的定义 160
9.4.2共用体变量的使用 161
9.5枚举类型 163
9.6用typedef定义类型新名 164
习题九 165
第十章 文件 169
10.1C文件简介 169
10.2文件的打开与关闭 169
10.2.1文件的打开 170
10.2.2文件的关闭 171
10.3文件的输入/输出操作 171
10.4.3fseek函数 176
10.4.2ftell函数 176
10.4.1rewind函数 176
10.4文件的随机访问 176
习题十 178
第十一章 综合应用及进阶 181
11.1一个图形应用的实例 181
11.2一个TSR技术应用的实例 197
习题十一 202
附录 203
附录Ⅰ ASCII码字符表 203
附录Ⅱ 运算符的优先级和结合性 204
附录Ⅲ C的函数库 205