第1章 概述 1
1…1计算机语言概述 1
1…1…1计算机语言的发展概况 1
1…1…2 C语言的发展历史 2
1…1…3 C语言的特点 2
1…2程序设计基础知识 4
1…2…1程序与程序语言 4
1…2…2程序设计 7
1…3 C语言程序 8
1…3…1 C语言程序 8
1…3…2 C程序结构 10
1…3…3 C语言程序的编辑、编译、运行(C程序的上机步骤) 13
习题一 15
实验一 17
第2章 基本数据类型、运算符与表达式 22
2…1数据类型概述 22
2…1…1 C语言的数据类型 22
2…1…2常量与变量 23
2…2整型数据 25
2…2…1整型常量 25
2…2…2整型变量 26
2…3实型数据 27
2…3…1实型常量 27
2…3…2实型变量 28
2…4字符型数据 29
2…4…1字符型常量 29
2…4…2字符型变量 29
2…4…3字符串常量 31
2…5运算符与表达式 32
2…5…1运算符与运算符的分类 32
2…5…2表达式与表达式的计算 39
2…6数据类型转换 42
2…6…1隐式数据类型转换 42
2…6…2强制数据类型转换 44
习题二 45
实验二 46
第3章 输入与输出设计 49
3…1数据输入输出的概念及在C语言中的实现 49
3…2字符数据的输入输出 50
3…2…1 getchar()函数 50
3…2…2 putchar()函数 50
3…3格式输入与输出 51
3…3…1格式输出函数printf() 51
3…3…2格式输入函数scanf() 56
3…4程序举例 59
3…5本章小结 60
习题三 61
实验三 63
第4章 分支设计 66
4…1 if语句 66
4…1…1 if语句的三种形式 66
4…1…2 if语句的嵌套 69
4…2 switch语句 73
4…3程序举例 75
习题四 80
实验四 86
第5章 循环设计 88
5…1 C语言中的循环语句 88
5…1…1 goto语句以及用goto语句构成循环 88
5…1…2 while语句 89
5…1…3 do-while语句 90
5…1…4 for语句 91
5…1…5 for循环的灵活性 95
5…1…6三种循环语句的使用 96
5…2 break语句和continue语句 100
5…2…1 break语句 100
5…2…2 continue语句 102
5…3循环嵌套 103
5…4循环程序设计 107
习题五 109
实验五 113
第6章 数组 118
6…1一维数组 118
6…1…1一维数组的用途 118
6…1…2一维数组的定义 119
6…1…3一维数组的引用 121
6…1…4一维数组的赋值 122
6…1…5一维数组应用举例 124
6…2二维数组 128
6…2…1二维数组的用途 128
6…2…2二维数组的定义 129
6…2…3二维数组的引用 130
6…2…4二维数组的赋值 131
6…2…5二维数组应用举例 133
6…3字符数组 136
6…3…1字符数组的定义 136
6…3…2字符数组的初始化 136
6…3…3字符数组的引用 137
6…3…4字符串和字符串结束标志 138
6…3…5字符数组的输入输出 140
6…3…6字符串处理函数 141
6…3…7字符数组应用举例 147
6…3…8字符串数组 148
6…4上机实验举例 151
6…5本章要点和常见错误列举 153
6…5…1本章要点 153
6…5…2常见错误列举 154
习题六 157
实验六 163
第7章 编译预处理 164
7…1宏定义 164
7…1…1无参宏定义 164
7…1…2带参宏定义 167
7…1…3预定义宏 171
7…1…4取消宏定义 172
7…2文件包含 172
7…3条件编译 173
7…4本章小结 177
习题七 177
实验七 182
第8章 函数 184
8…1函数概述 184
8…2 C函数定义 186
8…3函数的形式参数与实际参数 188
8…4函数的返回值 189
8…5函数调用 190
8…5…1函数调用的方法 190
8…5…2函数调用时参数间的传递 192
8…6函数声明 194
8…7函数嵌套调用和递归调用 195
8…7…1函数的嵌套调用 195
8…7…2函数的递归调用 196
8…8变量的作用域 198
8…8…1局部变量 198
8…8…2全局变量 199
8…9变量的存储类别 201
8…9…1存储分类 201
8…9…2动态存储方式 202
8…9…3静态存储方式 204
8…10内部函数和外部函数 206
8…10…1内部函数 206
8…10…2外部函数 206
8…11应用举例 207
习题八 209
实验八 214
第9章 指针 218
9…1变量的指针和指针变量 218
9…1…1地址(指针)和地址变量(指针变量)的概念 218
9…1…2指针变量的定义 220
9…1…3指针变量的初始化 220
9…1…4指针变量的引用 221
9…1…5指针变量作为函数参数 222
9…2数组和指针 224
9…2…1一维数组和指针 224
9…2…2多维数组和指针 230
9…3字符串和指针 235
9…4函数和指针 241
9…4…1函数的指针和指向函数的指针变量 242
9…4…2返回指针值的函数 246
9…5指针数组与指向指针的指针 250
9…5…1指针数组 250
9…5…2指向指针的指针 254
9…5…3指针数组作为main的参数 256
9…6 void指针类型简介 257
9…7指针应用实例 258
9…8本章小结 261
习题九 262
实验九 265
第10章 结构体和共用体 267
10…1结构体 267
10…1…1结构类型定义 267
10…1…2结构体类型变量的说明 268
10…2结构体变量的引用 269
10…2…1结构体变量的赋值 270
10…2…2结构体变量的初始化 270
10…3结构体数组 271
10…4结构体指针变量 274
10…4…1结构体指针变量的说明 274
10…4…2结构体指针变量的使用 274
10…5动态存储分配 277
10…6链表结构 279
10…6…1链表概述 279
10…6…2单向链表的基本操作 281
10…7共用体 290
10…7…1共用体的定义 291
10…7…2共用体变量说明 291
10…7…3共用体变量的赋值和使用 292
10…8枚举类型 293
10…8…1枚举类型的定义和枚举变量的说明 294
10…8…2枚举类型变量的赋值和使用 294
10…8…3枚举变量的输入输出 296
10…9程序举例 296
10…10 typedef定义新的类型标识符 298
10…11本章小结 300
习题十 301
实验十 305
第11章 位运算 308
11…1数值在计算机中的表示 308
11…2位运算 309
11…2…1位运算及其运算符 309
11…2…2按位与运算 310
11…2…3按位或运算 311
11…2…4按位异或运算 312
11…2…5求反运算 312
11…2…6左移运算 313
11…2…7右移运算 313
11…2…8应用程序举例 315
11…3位域(位段) 317
11…4本章小结 319
习题十一 319
实验十一 321
第12章 文件 322
12…1文件概述 322
12…1…1文件的概念 322
12…1…2 C文件 323
12…1…3文件类型指针 325
12…2文件的打开与关闭 326
12…2…1文件的打开(fopen函数) 326
12…2…2文件的关闭(fclose函数) 329
12…3文件的读写 330
12…3…1输入和输出一个字符 330
12…3…2输入和输出一个字符串 335
12…3…3格式化的输入和输出 337
12…3…4按“记录”的方式输入和输出 339
12…3…5清除和设置文件缓冲区 342
12…4文件的定位与随机读写 343
12…4…1文件的定位 344
12…4…2随机读写 344
12…5文件操作的出错检测 348
12…6非缓冲文件系统(系统级I/O) 349
12…6…1非缓冲文件系统的主要特点 349
12…6…2打开文件 350
12…6…3读文件和写文件 352
12…6…4关闭文件 352
12…6…5非缓冲文件系统的缓冲区的设置 352
12…7文件的重定向 354
12…8文件应用 354
习题十二 361
实验十二 366