第1章 C语言基础 1
1.1 C语言简介 2
1.1.1 C语言的应用及发展历程 2
1.1.2 C语言的特点 3
1.2 标识符 5
1.3 集成开发环境 5
1.3.1 Visual C++ 6.0 5
1.3.2 Turbo C 7
1.4 常量和变量 7
1.4.1 常量 7
1.4.2 变量 9
1.5 数据类型 10
1.6 运算符和表达式 12
1.6.1 赋值运算符 12
1.6.2 算术运算符 12
1.6.3 逻辑运算符 13
1.6.4 关系运算符 14
1.7 小型案例实训 15
1.7.1 案例一:第一个程序 15
1.7.2 案例二:程序结构及文件结构 17
本章小结 19
习题 19
第2章 算法基础 21
2.1 算法简介 22
2.1.1 算法的概念 22
2.1.2 算法的特性 24
2.2 算法描述 24
2.2.1 常见的算法描述 24
2.2.2 流程图的图示 26
2.2.3 三种基本结构的流程图 26
2.3 算法应用 27
2.4 小型案例实训 28
2.4.1 案例一:简单算法描述 28
2.4.2 案例二:复杂算法描述 29
本章小结 29
习题 29
第3章 选择结构的程序设计 31
3.1 if语句 32
3.1.1 单分支语句 32
3.1.2 双分支语句 33
3.2 if语句的嵌套 34
3.3 switch语句 36
3.4 小型案例实训 37
3.4.1 案例一:if嵌套的应用 37
3.4.2 案例二:break语句的应用 38
本章小结 38
习题 38
第4章 循环结构的程序设计 41
4.1 循环结构程序设计的概念 42
4.2 while语句 42
4.2.1 while语句的格式 42
4.2.2 while语句的执行过程 43
4.2.3 while语句的示例 43
4.3 do-while语句 45
4.3.1 do-while语句的格式 45
4.3.2 do-while语句的执行过程 45
4.3.3 do-while语句的示例 46
4.4 for语句 47
4.4.1 for语句的格式 47
4.4.2 for语句的执行过程 48
4.4.3 for语句示例 49
4.5 循环语句的嵌套 50
4.6 以循环实现的典型算法 52
4.6.1 Fibonacci数列 52
4.6.2 平方根的求解 53
4.6.3 百元百鸡问题的求解 54
4.6.4 质数判断的算法 55
4.7 break语句和continue语句 56
4.7.1 break语句 56
4.7.2 continue语句 56
4.8 goto语句 57
4.9 小型案例实训 58
4.9.1 案例一:输出满足条件的所有数 58
4.9.2 案例二:输出所有的玫瑰花数 59
本章小结 60
习题 61
第5章 数组 63
5.1 一维数组 64
5.1.1 一维数组的定义 64
5.1.2 元素的表示 64
5.1.3 一维数组示例 65
5.2 二维数组 68
5.2.1 二维数组的定义 69
5.2.2 元素的表示 69
5.2.3 二维数组示例 70
5.3 字符数组 73
5.3.1 字符串与字符型数组 73
5.3.2 字符数组的定义形式 73
5.3.3 字符数组的初始化 73
5.3.4 字符数组的输入输出 74
5.3.5 字符串处理函数 75
5.3.6 字符数组示例 76
5.4 小型案例实训 78
5.4.1 案例一:逆序输出一组数 78
5.4.2 案例二:小组成绩的统计 79
本章小结 81
习题 81
第6章 函数 83
6.1 函数定义 84
6.2 函数的调用 85
6.3 嵌套调用 87
6.4 递归调用 88
6.4.1 递归调用的定义 88
6.4.2 递归调用的条件 89
6.4.3 递归的说明 89
6.5 变量的存储类别 90
6.5.1 内部变量和外部变量 90
6.5.2 动态存储变量和静态存储变量 91
6.6 小型案例实训 93
6.6.1 案例一:判断是否为素数 93
6.6.2 案例二:求最大公约数和最小公倍数 94
本章小结 96
习题 96
第7章 指针 99
7.1 指针的概念 100
7.1.1 地址概述 100
7.1.2 指针的概念 102
7.2 指针变量 102
7.2.1 指针变量的定义 103
7.2.2 指针变量的引用 103
7.2.3 指针变量作为函数的参数 105
7.3 指针与数组 107
7.3.1 指向数组元素的指针变量 107
7.3.2 通过指针引用数组元素 108
7.3.3 数组名做函数参数 109
7.4 指针与字符串 111
7.4.1 字符串的表示形式 111
7.4.2 字符串指针做函数参数 112
7.5 小型案例实训 114
7.5.1 案例一:排序 114
7.5.2 案例二:筛选 115
本章小结 116
习题 116
第8章 结构体 119
8.1 结构体类型 120
8.2 结构体变量 121
8.2.1 结构体变量的定义 121
8.2.2 结构体变量的引用 123
8.3 结构体变量的应用 124
8.3.1 指向结构体类型数据的指针 124
8.3.2 结构体数组 125
8.3.3 结构体数组的指针 127
8.3.4 结构体与函数 128
8.4 小型案例实训 129
8.4.1 案例一:统计学生的平均成绩 129
8.4.2 案例二:搜索学生信息 130
本章小结 132
习题 132
第9章 文件 133
9.1 文件的概念 134
9.1.1 文件的概念 134
9.1.2 文件指针 134
9.2 文件的打开与关闭 135
9.2.1 文件打开函数 135
9.2.2 文件关闭函数 137
9.3 文件的输入与输出 137
9.3.1 字符读写函数 138
9.3.2 字符串读写函数 141
9.3.3 数据块读写函数 142
9.3.4 格式化读写函数 144
9.3.5 文件的随机读写 145
9.3.6 文件检测函数 146
9.4 小型案例实训 147
9.4.1 案例一:修改员工信息 147
9.4.2 案例二:创建学员成绩登记册 148
本章小结 150
习题 150
第10章 系统的设计与开发 153
10.1 通信录管理系统 154
10.2 评分系统 157
10.3 成绩管理系统 161
本章小结 167
习题 167
第11章 程序编写中的常见错误 169
11.1 程序编写中常见的错误 170
11.2 VC环境中常见的错误信息 172
11.3 TC环境中常见的错误信息 173
本章小结 176
习题 176
第12章 C语言试题 179
12.1 试题第一套 180
12.2 试题第二套 187
12.3 试题第三套 196
附录Ⅰ ASCII码表 204
附录Ⅱ C语言中的关键字 205
附录Ⅲ 运算符的优先级和结合性 206
附录Ⅳ C语言的库函数 207
附录Ⅴ 全国计算机等级考试简介 211
附录Ⅵ 二级C语言考试大纲(2013版) 213
参考文献 215