第1章C语言程序设计基础 1
1.1 C语言的发展历史和特点 1
1.1.1 C语言的发展历史 1
1.1.2 C语言的特点 1
1.2 C语言程序的基本构成 2
1.3 C语言的基本语法成分 4
1.3.1 C语言的主要“单词” 5
1.3.2 C语言的主要语法单位 5
1.4集成开发环境Visual C++简介 6
1.5 C语言的上机执行过程 7
本章小结 8
习题1 9
第2章 基本数据类型、运算符和表达式 10
2.1数据类型 10
2.1.1整型 11
2.1.2实型 11
2.1.3字符型 12
2.2变量和常量 12
2.2.1变量 12
2.2.2常量 14
2.3运算符和表达式 17
2.3.1运算符 18
2.3.2表达式 25
2.4数据类型转换 26
2.4.1自动类型转换 26
2.4.2赋值类型转换 27
2.4.3强制类型转换 29
2.5数据的输入/输出 30
2.5.1格式化输出函数printf 30
2.5.2格式化输入函数scanf 35
2.5.3字符数据的输入与输出 39
2.5.4字符串的输入与输出 41
2.6系统函数 41
2.6.1常用数学处理函数 42
2.6.2常用类型转换函数 43
2.6.3常用字符处理函数 43
2.6.4常用字符串处理函数 44
2.6.5其他常用函数 45
本章小结 46
习题2 47
第3章 程序控制结构 53
3.1顺序结构 53
3.1.1表达式语句 53
3.1.2空语句 53
3.1.3复合语句 54
3.2选择结构 54
3.2.1 if语句 54
3.2.2 switch语句 60
3.3循环结构 62
3.3.1 while语句 62
3.3.2 do-while语句 64
3.3.3 for语句 66
3.3.4循环语句的嵌套 68
3.4其他控制语句 71
3.4.1 goto语句 71
3.4.2 break语句和continue语句 72
本章小结 74
习题3 74
第4章 函数 87
4.1概述 87
4.1.1函数的分类 87
4.1.2程序解析 88
4.2函数的定义、调用和声明 89
4.2.1函数的定义 89
4.2.2函数的调用 92
4.2.3函数的声明 95
4.2.4函数间的参数传递 96
4.3函数的嵌套和递归调用 99
4.3.1函数的嵌套调用 99
4.3.2递归函数 101
4.4变量的作用域与生存期 103
4.4.1局部变量与全局变量 103
4.4.2动态变量与静态变量 104
4.5编译预处理命令 106
4.5.1文件包含 106
4.5.2宏定义 107
本章小结 108
习题4 108
第5章 数组 117
5.1一维数组 117
5.1.1一维数组的定义 117
5.1.2一维数组元素的引用 118
5.1.3一维数组的基本操作 119
5.1.4一维数组的应用 119
5.2二维数组 122
5.2.1二维数组的定义与初始化 123
5.2.2二维数组元素的引用 123
5.2.3二维数组的基本操作 124
5.2.4二维数组的应用 125
5.3字符数组 128
5.3.1字符数组与字符串 128
5.3.2字符串的输入输出 129
5.3.3二维字符数组的应用 133
5.4数组与函数 133
本章小结 136
习题5 136
第6章 指针 142
6.1指针与指针变量 142
6.1.1指针的概念 142
6.1.2指针变量的定义与初始化 144
6.1.3指针变量的使用 145
6.1.4指针的基本运算 146
6.2指针与数组 149
6.2.1指针与一维数组 149
6.2.2指针与二维数组 151
6.2.3指针与字符串 154
6.2.4指针数组 155
6.2.5指针与动态内存分配 156
6.3指针与函数 158
6.3.1指针及数组名作为函数参数 158
6.3.2指针作为函数的返回值 160
6.3.3指向函数的指针 161
本章小结 162
习题6 163
第7章 结构体、共用体与枚举 174
7.1结构体类型 174
7.2结构体变量 175
7.2.1结构体变量的声明 175
7.2.2结构体变量的初始化 177
7.2.3结构体变量的引用 178
7.2.4结构体数组 180
7.2.5结构体指针 184
7.2.6结构体与函数 186
7.2.7链表 188
7.3共用体类型 196
7.3.1共用体类型定义 196
7.3.2共用体类型变量声明 196
7.3.3共用体类型变量引用 196
7.4枚举类型 197
7.5用户定义类型 198
本章小结 200
习题7 200
第8章 文件 205
8.1文件概述 205
8.1.1文件的概念 205
8.1.2文件指针 206
8.2文件的打开与关闭 207
8.2.1文件的打开操作 207
8.2.2文件的关闭操作 208
8.3文件的读/写 208
8.3.1文件字符读/写 209
8.3.2文件字符串读/写 211
8.3.3文件格式化读/写 212
8.3.4其他相关函数 214
本章小结 215
习题8 216
第9章C语言经典编程 219
【实例01】编制日历 219
【实例02】阿姆斯特朗数 220
【实例03】素数幻方 221
【实例04】模拟自动取款机屏幕 227
【实例05】输出九九表 230
【实例06】彩球问题 231
【实例07】递归解决分酒问题 232
【实例08】获取当前的CMOS信息 233
【实例09】不使用strcpy()函数实现字符串的拷贝 235
【实例10】寻找三重回文数 236
【实例11】归并排序 237
【实例12】字母顺序输出字符串 239
【实例13】字符串的匹配 240
【实例14】应用栈设置密码 241
【实例15】同时显示两个文件信息 244
第10章 综合性案例 247
附录1 C语言中常用的标准库函数 266
附录2 ASCII码字符集 270
附录3完整的ASCII码表 272