第1章 C语言程序设计快速入门 1
1.1初识C语言 2
1.1.1 C语言是其他编程语言的母语 2
1.1.2 C语言是系统编程语言 2
1.1.3 C语言的历史 2
1.1.4 C语言的基本特征 3
1.1.5 C语言的优缺点 4
1.2搭建C语言开发环境 5
1.2.1 C语言的集成开发环境概述 5
1.2.2 Dev-C++的下载 6
1.2.3 Dev-C++的安装 7
1.2.4第一次启动的简单设置 9
1.3编写C语言程序 10
1.3.1新建源代码文件 10
1.3.2编写代码并保存 11
1.3.3编译运行 12
1.3.4 C语言程序执行流程 13
第2章 C语言程序设计的初步知识 15
2.1常量和变量 16
2.1.1常量 16
2.1.2变量与赋值 17
2.2基本数据类型 19
2.2.1整型 20
2.2.2浮点型 21
2.2.3字符型 22
2.3运算符 25
2.3.1算术运算符 25
2.3.2赋值运算符 26
2.3.3位运算符 28
2.4自增(++)和自减(--) 31
2.5数据类型的转换 32
2.5.1自动的类型转换 32
2.5.2强制的类型转换 33
2.6 C语言的代码编写注意事项 34
第3章 C语言的选择结构 35
3.1 if…else语句 36
3.1.1 if…else语句的一般格式 36
3.1.2实例:奇偶数判断 36
3.1.3实例:游戏登录判断系统 37
3.2多个if…else语句 39
3.2.1实例:成绩评语系统 40
3.2.2实例:每周学习计划系统 42
3.3关系运算符 43
3.3.1关系运算符及意义 44
3.3.2实例:求一元二次方程的根 44
3.3.3实例:企业奖金发放系统 45
3.4逻辑运算符 47
3.4.1逻辑运算符及意义 47
3.4.2实例:判断是否是闰年 47
3.4.3实例:输入3个数并显示最大的数 48
3.4.4实例:剪刀、石头、布游戏 49
3.5嵌套if语句 50
3.5.1嵌套if语句的一般格式 50
3.5.2实例:判断一个数是否是2或3的倍数 51
3.5.3实例:判断正负数 52
3.6条件运算符和条件表达式 53
3.7 switch语句 53
3.7.1 switch语句的一般格式 54
3.7.2实例:根据输入的数显示相应的星期几 54
3.7.3实例:根据输入的年份和月份显示该月有多少天 55
第4章 C语言的循环结构 57
4.1 while循环 58
4.1.1 while循环的一般格式 58
4.1.2实例:利用while循环显示26个小写字母 58
4.1.3实例:随机产生10个随机数并打印最大的数 59
4.1.4实例:求s=a+aa+aaa+……+aa…a的值 60
4.1.5实例:猴子吃桃问题 60
4.2 do-while循环 61
4.2.1 do-while循环的一般格式 62
4.2.2实例:利用do-while循环显示26个大写字母及对应的AS II码 62
4.2.3实例:计算1+2+3 +……+100的和 63
4.2.4实例:阶乘求和 63
4.3 for循环 64
4.3.1 for循环的一般格式 64
4.3.2实例:显示100之内的奇数 64
4.3.3实例:分解质因数 65
4.3.4实例:小球反弹的高度 66
4.4循环嵌套 67
4.4.1实例:显示9*9乘法表 67
4.4.2实例:显示国际象棋棋盘 68
4.4.3实例:绘制?号的菱形 69
4.4.4实例:斐波那契数列 70
4.4.5实例:杨辉三角 71
4.4.6实例:弗洛伊德三角形 72
4.5 break语句 73
4.6 continue语句 75
第5章 C语言的基本输出与输入 77
5.1初识输出与输入 78
5.2 putchar()函数 78
5.2.1实例:显示字符及对应的ASCII码 78
5.2.2实例:利用while循环显示10个数字及ASCII码 79
5.3 getchar()函数 80
5.3.1实例:输入什么字符,就显示什么字符及对应的ASC II码 80
5.3.2实例:判断输入的字符是什么类型 81
5.4 printf()函数 82
5.4.1 printf()函数的语法格式 82
5.4.2数字的格式化输出 83
5.4.3利用格式化控制输入变量值的宽度和对齐方式 84
5.4.4实例:用*号输出字母C的图案 85
5.5 scanf()函数 86
5.5.1 scanf()函数的语法格式 86
5.5.2数字和字符的格式化输入 86
5.5.3实例:回文数 89
5.5.4实例:求1!+2!+3! +q +n!的和 90
5.5.5实例:求两个正整数的最大公约数和最小公倍数 91
5.5.6实例:根据输入的字母显示星期几 92
第6章 C语言的函数 95
6.1初识函数 96
6.1.1函数的重要性 96
6.1.2库函数的运用 96
6.2常用的库函数 96
6.2.1 math.h头文件中的常用库函数 97
6.2.2 float.h头文件中的常用库宏 98
6.2.3 limits.h头文件中的常用库宏 99
6.2.4 ctype.h头文件中的常用库函数 101
6.3自定义函数 103
6.3.1函数的定义 103
6.3.2函数调用 104
6.3.3函数调用的3种方式 105
6.3.4函数的参数 106
6.3.5递归函数 109
6.4局部变量和全局变量 110
6.5实例:计算一个数为两个质数之和 112
6.6 实例:年龄问题的解决 114
第7章 C语言的数组 117
7.1初识数组 118
7.1.1数组的定义 118
7.1.2数组内存是连续的 118
7.1.3数组的初始化 119
7.2数组元素的访问 119
7.2.1实例:利用数组元素的索引显示6×4行矩阵 119
7.2.2实例:利用for循环显示数组中的元素 120
7.2.3实例:利用随机数为数组赋值并显示 121
7.3二维数组 122
7.3.1二维数组的定义 122
7.3.2二维数组的初始化 123
7.3.3二维数组元素的访问 123
7.4判断某数是否在数组中 125
7.5函数在数组中的应用 126
7.5.1把数组作为参数传给函数 127
7.5.2函数的返回值是数组 128
7.6数组中元素的排序 129
7.6.1冒泡排序 129
7.6.2选择排序 131
7.6.3插入排序 132
第8章 C语言的字符串 135
8.1初识字符串 136
8.1.1字符串常量 136
8.1.2字符数组 136
8.2字符数组和字符串的显示 137
8.2.1实例:字符数组元素的显示 137
8.2.2实例:字符串的显示 138
8.3字符串长度与字符串在内存中的长度 139
8.4字符串的输入函数 140
8.4.1实例:利用scanf()函数实现字符串的输入 140
8.4.2实例:利用getchar()函数实现字符串的输入 141
8.4.3实例:利用gets()函数实现字符串的输入 142
8.5字符串的输出函数 142
8.5.1实例:利用putchar()函数显示字符串 143
8.5.2实例:利用puts()函数显示字符串 143
8.6字符串数组 144
8.7字符串处理的常用库函数 145
8.8字符串运用实例 147
8.8.1实例:字符串的截取 147
8.8.2实例:字符串的排序 148
8.8.3实例:字符串首尾倒置 149
8.8.4实例:字符串中的汉字倒置 150
8.8.5实例:删除字符串右边的空格 151
8.8.6实例:删除字符串左边的空格 151
8.8.7实例:汉字和字母的个数 152
8.8.8实例:动态输入5个单词并排序 153
第9章 C语言的指针 155
9.1初识指针 156
9.1.1什么是地址 156
9.1.2指针变量 157
9.1.3指针变量的赋值 157
9.1.4指针变量的输出 158
9.1.5引用指针变量中的变量 159
9.1.6指向指针变量的指针变量 160
9.2指针的移动 161
9.2.1指针的递增 161
9.2.2指针的递减 162
9.2.3指针的减法运算 163
9.2.4指针的比较 164
9.3指针与函数 165
9.3.1指针变量作为函数的形式参数 165
9.3.2函数的返回值是指针变量 166
9.4指针与数组 167
9.5指针与字符串 169
9.6指针数组 170
9.7实例:输入不同的数字显示不同的月份 171
第10章 C语言的编译预处理和内存管理 173
10.1初识编译预处理 174
10.2宏定义 175
10.2.1不带参数的宏定义 175
10.2.2带参数的宏定义 176
10.2.3预定义宏 178
10.2.4预处理器的运算符 179
10.3文件包含 180
10.3.1文件包含的格式 181
10.3.2文件包含的运用 181
10.4条件编译 183
10.4.1 #if命令 183
10.4.2 #ifdef命令 184
10.4.3 #ifndef命令 185
10.5实例:编写一个带参数的宏,实现两个数的交换 186
10.6内存管理 187
10.6.1内存动态分配常用库函数 187
10.6.2动态分配内存 188
10.6.3重新调整内存的大小和释放内存 189
第11章 C语言的复合结构 193
11.1初识结构体 194
11.1.1结构体的定义 194
11.1.2结构体变量的定义 194
11.1.3结构体变量的赋初值 195
11.1.4结构体变量的输出 195
11.2结构体数组 196
11.2.1显示结构体数组中的元素 197
11.2.2求所有职工的工资总和及平均工资 198
11.2.3显示所有男性职工的信息及其平均工资 199
11.2.4显示工资大于平均工资的职工信息 200
11.3结构体与指针 201
11.4结构体作为函数的形式参数 205
11.5位域 206
11.5.1位域的定义 206
11.5.2位域变量的定义 207
11.5.3位域变量的赋初值 207
11.5.4位域变量的输出 208
11.5.5无名位域 209
11.6枚举 209
11.6.1枚举的定义 210
11.6.2枚举变量的定义 210
11.6.3枚举变量的赋初值并显示 211
11.6.4遍历枚举元素 212
11.6.5实例:选择喜欢的颜色 212
11.7共用体 214
11.7.1共用体的定义 214
11.7.2共用体变量的定义 215
11.7.3输出共用体成员变量 215
11.8用户定义类型 217
第12章 C语言的文件操作 219
12.1初识文件 220
12.1.1 C的源程序文件和执行文件 220
12.1.2 C程序中的数据文件 220
12.1.3输入和输出缓冲区 221
12.1.4 C程序中的文件指针和位置指针 221
12.2创建文件 222
12.2.1在当前目录中创建文件 222
12.2.2在当前目录的子文件夹中创建文件 223
12.2.3在当前目录的上一级目录中创建文件 225
12.2.4利用绝对路径创建文件 226
12.3打开文件并写入内容 227
12.3.1利用fputc()函数向文件中写入内容 227
12.3.2利用fputs()函数向文件中写入内容 229
12.3.3利用fprintf()函数向文件中写入内容 231
12.4读出文件中的内容 235
12.4.1利用fgetc()函数读出文件中的内容 235
12.4.2利用fgets()函数读出文件中的内容 236
12.4.3利用fscanf()函数读出文件中的内容 237
12.5二进制文件 238
12.5.1创建和打开二进制文件 238
12.5.2向二进制文件中写入内容 240
12.5.3读取二进制文件中的内容 241
12.6文件的定位函数 243
12.6.1 rewind()函数 243
12.6.2 fseek()函数 243
第13章 C语言的线性表 245
13.1初识线性表 246
13.1.1线性表的前驱和后继 246
13.1.2线性表的特征 246
13.2顺序表 246
13.2.1什么是顺序表 246
13.2.2顺序表的初始化 247
13.2.3向顺序表中插入数据元素 248
13.2.4删除顺序表中的数据元素 250
13.2.5查找顺序表中的数据元素 252
13.2.6修改顺序表中的数据元素 253
13.3链表 255
13.3.1链表概述 255
13.3.2链表的定义及初始化 256
13.3.3向链表中插入数据元素 259
13.3.4删除链表中的数据元素 261
13.3.5查找链表中的数据元素 262
13.3.6修改链表中的数据元素 263
第14章 C语言的栈和队列 265
14.1初识栈 266
14.2顺序栈 266
14.2.1顺序栈的定义与初识化 266
14.2.2向顺序栈中添加数据元素 266
14.2.3利用for循环向顺序栈中添加字符并显示 268
14.2.4删除顺序栈中的数据元素 269
14.3链栈 271
14.3.1链栈的定义与初识化 271
14.3.2向链栈中插入数据元素 271
14.3.3显示链栈中的数据元素 272
14.3.4删除链栈中的数据元素 273
14.4初识队列 274
14.5顺序队列 275
14.5.1顺序队列的定义与初识化 275
14.5.2向顺序队列中添加数据元素并显示 275
14.5.3删除顺序队列中的数据元素 276
14.5.4顺序队列中的溢出现象 278
14.5.5循环队列 278
14.6链队列 280
14.6.1链队列的定义与初识化 280
14.6.2向链队列中插入数据元素并显示 280
14.6.3删除链队列中的数据元素 281
第15章 手机销售管理系统 283
15.1手机销售管理系统主程序 284
15.2增加手机信息 286
15.3显示全部手机信息 288
15.4保存手机信息 289
15.5读取手机信息 292
15.6 查找手机信息 293
15.6.1利用价格查询手机信息 294
15.6.2利用编号查询手机信息 294
15.6.3利用库存数量查询手机信息 294
15.6.4利用手机名查询手机信息 295
15.6.5调用各种查询函数实现分类查找功能 295
15.6.6查找手机信息效果 296
15.7购买手机功能 299
15.8删除手机信息 301