第1章 概论 1
1.1 C语言概论 2
1.1.1 C语言发展史 2
1.1.2 C语言的特点 3
1.1.3 C语言的符号 4
1.1.4 C语言的程序结构 5
1.2 程序设计概论 7
1.2.1 程序设计 8
1.2.2 一般程序设计方法 8
1.2.3 结构程序设计方法 9
1.2.4 面向对象程序设计与C++ 10
习 题 11
第2章 C语言基本概念 12
2.1 数据类型 12
2.2 标识符 13
2.3 常量与变量 14
2.3.1 常量与变量定义 14
2.3.2 变量属性与赋值 15
2.3.3 先定义后使用原则 17
2.4 基本数据类型 17
2.4.1 整数 18
2.4.2 实数 19
2.4.3 字符 20
2.4.4 字符串 23
2.5 C语言的运算 24
2.5.1 运算符 24
2.5.2 类型转换 28
2.5.3 优先级 29
2.6 输入输出 29
2.6.1 getchar函数(字符输入函数) 30
2.6.2 scanf函数(格式输入函数) 31
2.6.3 putchar函数 32
2.6.4 printf函数(格式输出函数) 33
2.7 语句 35
2.7.1 简单语句 35
2.7.2 控制语句 37
2.7.3 复合语句 38
习 题 38
第3章 C语言的程序结构 42
3.1 顺序结构 42
3.2 选择结构 42
3.2.1 单分支选择结构 43
3.2.2 双分支选择结构 45
3.2.3 多分支选择结构 49
3.3 循环结构 52
3.3.1 前判断循环结构 53
3.3.2 后判断循环结构 56
3.3.3 面向问题循环结构 58
3.3.4 循环的中断和继续 60
3.3.5 3种循环的比较 63
习 题 64
第4章 函数 68
4.1 定义函数 68
4.2 函数调用 71
4.2.1 函数调用的形式 71
4.2.2 函数调用的位置 72
4.2.3 函数调用条件 73
4.3 函数之间的数据传递 75
4.3.1 参数传递 76
4.3.2 变量传递 77
4.4 动态变量与静态变量 79
4.4.1 动态变量 80
4.4.2 静态变量 81
4.5 类型说明符void 82
4.6 函数的递归 84
习 题 87
第5章 指针 92
5.1 指针的概念 92
5.2 指针变量的定义和赋值 94
5.3 指针运算 97
5.3.1 指针与整数相加、减 97
5.3.2 指针的取内容运算 98
5.4 指针作为函数参数 101
5.5 字符指针 102
5.5.1 字符指针与字符 102
5.5.2 字符指针与字符串 103
习 题 106
第6章 数组 108
6.1 数组类型的概念 108
6.2 一维数组 108
6.2.1 一维数组变量的定义 108
6.2.2 一维数组的应用 110
6.3 多维数组 113
6.3.1 二维数组变量的定义 113
6.3.2 二维数组的应用 115
6.3.3 多维数组 117
6.4 字符数组 117
6.4.1 字符数组与字符串 117
6.4.2 字符数组的初始化 118
6.4.3 字符数组的数据输入 119
6.4.4 字符数组的数据输出 120
6.4.5 字符数组的运算函数 121
6.4.6 字符数组的应用 123
6.5 地址法表示数组元素 125
6.5.1 数组的首地址和偏移量 126
6.5.2 数组变址查找 127
6.5.3 指向数组元素的指针 127
6.6 数组作为函数参数 130
6.7 指针数组 131
6.7.1 指针数组表示多个字符串 131
6.7.2 指针数组作为main函数的参数 135
习 题 137
第7章 结构体类型 141
7.1 定义结构体数据类型 141
7.2 结构体变量 143
7.2.1 定义结构体变量 143
7.2.2 结构体类型变量的初始化 145
7.2.3 结构体变量的输入输出 147
7.3 结构体数组 148
7.3.1 结构体数组变量的定义 148
7.3.2 结构体数组变量的初始化 149
7.3.3 结构体数组变量的输入输出 150
7.4 链表 152
习 题 155
第8章 枚举类型 157
8.1 定义枚举类型 157
8.2 定义枚举类型变量 158
8.3 枚举类型的输入输出 159
习 题 161
第9章 文件 162
9.1 文件的概念 162
9.2 文件类型指针 163
9.3 打开和关闭文件 163
9.3.1 文件的打开 164
9.3.2 文件的关闭 166
9.4 文件的读写 166
9.4.1 fputc函数 166
9.4.2 fgetc函数 168
9.4.3 fputs函数 170
9.4.4 fgets函数 171
9.4.5 fwrite函数 172
9.4.6 fread函数 174
9.5 文件的随机读写 175
9.5.1 rewind 函数 175
9.5.2 ftell函数 176
9.5.3 fseek函数 177
习 题 178
第10章 编译预处理 180
10.1 宏替换 180
10.1.1 不带参数的宏替换 180
10.1.2 带参数的宏替换 181
10.1.3 宏替换要注意的问题 183
10.2 文件包含 184
10.3 条件编译 186
习 题 190
第11章 C语言实验 192
11.1 TC使用说明 192
11.1.1 TC运行环境 192
11.1.2 启动 192
11.1.3 TC的常用功能键 193
11.1.4 Turbo C主菜单 193
11.1.5 TC的一般使用方法 193
11.1.6 C语言实验内容 194
11.2 实验一:基础知识实验 194
11.3 实验二:逻辑运算和判断选取控制 200
11.4 实验三:循环控制 202
11.5 实验四:函数 204
11.6 实验五:指针 208
11.7 实验六:数组 209
11.8 实验七:结构和枚举类型 213
11.9 实验八:文件 215
11.10 实验九:编译预处理 216
附录Ⅰ:TC菜单命令 218
附录Ⅱ:C语言关键字列表 222
附录Ⅲ:库函数 222