第1章 进入C语言程序世界准备和计算机交流 1
1.1 初识C语言 1
1.1.1 第一个C程序 1
1.1.2 C程序的结构特点 2
1.1.3 规范书写C程序 2
1.2 设计简单的C程序 4
1.3 C程序的调试与运行 6
1.3.1 C程序的实现过程 6
1.3.2 在Visual C+++环境中实现C程序 6
1.3.3 算法及算法的表示 12
小结 15
习题 16
项目实训——设计个人特色名片 17
第2章 应用C的基础知识实现简单数据处理 18
2.1 常量与变量 19
2.2 C语言的基本数据类型 20
2.2.1 整型数据 20
2.2.2 实型数据 22
2.2.3 字符型数据 23
2.3 C语言的运算符和表达式 26
2.3.1 算术运算符及其表达式 27
2.3.2 赋值运算符及其表达式 28
2.3.3 自增和自减运算符 29
2.3.4 强制类型转换运算符及其表达式 30
2.3.5 逗号运算符及其表达式 30
2.3.6 不同类型数据之间的混合运算 31
小结 33
习题 34
项目实训——设计产品超市智能计算器 36
第3章 用顺序结构设计程序解决简单实际问题 37
3.1 结构化程序设计的三种基本结构 37
3.2 数据的输入与输出 39
3.2.1 格式输出函数printf() 39
3.2.2 格式输入函数scanf() 42
3.2.3 单个字符输入/输出函数(getchar()/putchar()) 44
3.3 顺序结构程序设计举例 45
小结 48
习题 48
项目实训——企业员工工资计算 51
第4章 用选择结构设计程序实现分支判断 52
4.1 选择结构程序设计简介 52
4.2 if语句的典型形式 53
4.2.1 简单if形式 54
4.2.2 标准if…else…形式 54
4.2.3 if…else if…语句形式 55
4.3 选择结构中常用的运算符和表达式 57
4.3.1 关系运算符及其表达式 57
4.3.2 逻辑运算符及其表达式 58
4.3.3 条件运算符及其表达式 61
4.4 嵌套if语句形式 62
4.5 switch语句的应用——评定学生成绩 64
4.6 选择结构程序设计应用实例 66
4.6.1 计算银行存款利息 66
4.6.2 智能体检电子秤 67
4.6.3 设计简易计算器 68
小结 71
习题 72
项目实训——企业员工奖金分配 75
第5章 用循环结构设计程序实现重复操作 76
5.1 为什么使用循环 76
5.2 while语句与do…while语句 77
5.2.1 while语句(当型循环) 77
5.2.2 do…while语句(直到型循环) 81
5.3 for语句实现循环 82
5.4 几种循环的比较 86
5.5 多重循环(嵌套循环) 87
5.6 break语句和continue语句 91
5.6.1 break语句 91
5.6.2 continue语句 92
5.7 循环结构程序设计举例 93
5.7.1 找最大值及求和 93
5.7.2 求阶乘的和 95
5.7.3 求素数 97
小结 101
习题 102
项目实训——企业员工技能大赛现场评分 106
第6章 应用数组设计程序实现批量数据处理 107
6.1 数组的引入 107
6.2 一维数组及应用 109
6.2.1 一维数组的定义(先定义后使用) 109
6.2.2 一维数组的初始化 109
6.2.3 一维数组的引用 110
6.3 二维数组 112
6.3.1 二维数组的定义 112
6.3.2 二维数组的初始化 113
6.3.3 二维数组元素的引用 113
6.3.4 多维数组 115
6.4 字符数组 116
6.4.1 字符数组的定义 116
6.4.2 字符数组的初始化 117
6.4.3 字符数组的输入与输出 117
6.4.4 字符串(字符数组)处理函数 118
6.5 数组的应用 121
6.5.1 利用数组求Fibonacci数列的前n项 121
6.5.2 利用数组实现数据排序 123
6.5.3 利用数组处理批量数据 126
6.5.4 利用数组实现矩阵的转置 127
6.5.5 字符数组的应用 128
小结 132
习题 132
项目实训——企业员工系统的登录与工资统计 135
第7章 应用函数设计程序实现模块化设计 137
7.1 函数的引入 137
7.2 函数的定义与调用 138
7.2.1 函数定义的一般形式 139
7.2.2 函数的参数和返回值 140
7.2.3 函数调用的一般方法 142
7.2.4 函数的声明 143
7.3 函数的嵌套调用和递归调用 144
7.3.1 函数的嵌套调用 144
7.3.2 函数的递归调用 145
7.4 函数应用实例 147
7.4.1 利用函数完成特定功能求值 147
7.4.2 利用函数求阶乘的和 147
7.4.3 数组作为函数参数 149
7.5 局部变量、全局变量及其存储 152
7.5.1 变量的作用域 152
7.5.2 变量的存储类别(生存期、生命期) 153
小结 159
习题 159
项目实训——企业员工业绩评比 162
第8章 应用指针设计程序增加独有特色 163
8.1 指针的概念 163
8.1.1 指针与地址的关系 163
8.1.2 变量的直接访问与间接访问 164
8.2 指针怎么用 164
8.2.1 指针变量的定义、初始化与运算 165
8.2.2 应用指针对一维数组操作 166
8.2.3 应用指针处理字符串 168
8.3 指针的高级应用 169
8.3.1 指针变量作函数的参数 169
8.3.2 返回指针的函数定义与使用 170
8.3.3 指向函数的指针 171
8.3.4 应用指针处理二维数组 172
8.3.5 指针数组 174
8.3.6 多重指针 175
小结 180
习题 182
项目实训——企业员工考勤系统 184
第9章 自己定义数据类型完成复杂数据处理 186
9.1 结构体类型及其变量的定义 187
9.1.1 结构体类型的定义 187
9.1.2 结构体类型变量的定义 189
9.2 结构体变量的使用 190
9.2.1 结构体类型成员的引用 190
9.2.2 结构体类型变量的赋值 191
9.3 结构体数组的应用 192
9.3.1 结构体数组的应用概述 192
9.3.2 应用指针处理结构体数组 194
9.4 结构体变量作为函数参数 195
9.5 结构体应用——链表 197
9.5.1 什么是动态链表 197
9.5.2 用尾插法创建链表 197
9.5.3 链表的输出 199
9.6 共同体 199
9.6.1 共同体类型定义 200
9.6.2 共同体类型变量的定义引用 201
9.6.3 共同体类型特点 201
9.7 枚举类型 202
9.8 用typedef定义类型 203
9.8.1 定义已有类型的别名 203
9.8.2 定义构造类型别名 203
9.8.3 typedef的应用 204
小结 212
习题 212
项目实训——企业员工档案管理及信息查询 214
第10章 应用文件管理数据 216
10.1 文件概述 216
10.1.1 文件的概念 216
10.1.2 文件的指针 218
10.1.3 文件的一般操作过程 218
10.2 对文件进行操作 219
10.2.1 文件的打开/关闭 219
10.2.2 文件的基本读/写操作 221
10.2.3 文件的格式化读/写 223
10.2.4 文件的数据块读/写 224
10.2.5 文件的定位 225
10.2.6 文件的检错与处理函数 226
10.3 文件的应用 227
小结 230
习题 230
项目实训——企业信息管理与保存 232
第11章 C程序设计项目实战 234
11.1 企业员工信息系统开发思路 234
11.2 企业员工信息系统的设计与实现 235
小结 247
综合自测题 248
综合自测题参考答案 251
附录 253
附录A常用字符与ASCII码对照 253
附录B C语言的关键字 254
附录C运算符的优先级和结合性 254
附录D编译预处理命令 255
附录E位运算 260
附录F C语言常见库函数 262