C语言实战书籍

  本书由杰哥精心编写,既有实战技能可以快速上手,也有内功扎实熟悉底层原理后劲十足。
  C语言在编程界的江湖地位可以是至尊无上的,在大学也往往作为一门编程的入门语言。 市面上关于C语言学习的书籍非常多。有的过于深奥,让广大初学者望而生畏;有的过于浅显,浅入浅出,仅限于简单的示例;有的不注重实战,工作用不到的内容长篇大论,浪费读者时间。
在这里插入图片描述

目录
内容简介	13
前言	15
第一章 C语言概述	19
1.1、 C语言简介	19
1.1.1 C语言发展史	19
1.1.2 C语言的优点	19
1.1.3 C语言的特点	20
1.1.4 如何学习C语言	21
1.1.5 C语言标准	21
1.2、 搭建一个方便易用的开发环境	22
1.2.1 常用的C编译器和代码编辑环境	22
1.2.2 为什么选择CodeBlocks	22
1.2.3安装CodeBlocks	22
1.2.4使用CodeBlocks	23
1.3、 C语言程序	31
1.3.1 C语言程序的开发步骤	31
1.3.2 C语言的程序结构	32
1.3.3 刚写代码你可能会犯得错误	33
1.3.4 C程序注释信息	34
1.3.5 C语言程序的书写规范	34
本章小结	35
习 题	36
第二章  数据类型	37
2.1 概述	37
2.1.1 字符集	37
2.1.2 标识符	37
2.1.2 保留字(关键字)	38
2.2 数据类型	38
2.2.1 基本类型	39
2.2.2 构造类型	42
2.2.3 指针类型	42
2.2.4 空类型	42
2.3 常量	42
2.3.1 直接常量和符号常量	43
2.3.2 符号常量的优点	44
2.3.3 直接常量的书写格式	44
2.3.4 转义字符	45
2.3.5 字符串	47
2.4 变量	48
2.4.1 变量的定义	48
2.4.2变量的初始化	49
  2.4.3 变量在内存中占据的空间和变量的值	49
2.4.4 变量赋值	55
2.5 程序中数据的输入输出	56
2.5.1 字符输入输出	56
2.5.2 格式化输入输出	58
本章小结	63
习 题	64
第三章 运算符和表达式	65
3.1基本概念	65
3.1.1运算符	65
3.1.2表达式	66
3.2算术运算符与表达式	67
3.2.1算术运算符	67
3.2.2自增、自减运算符	67
3.2.3算术表达式和优先级与结合性	68
3.3 赋值运算符与赋值表达式	69
3.3.1赋值表达式	69
3.3.2复合运算符	69
3.4逗号运算符和逗号表达式	70
3.4.1逗号表达式的一般形式	70
3.4.2逗号表达式的优先级和结合性	71
3.5关系运算符与关系表达式	72
3.5.1关系运算符的种类	72
3.5.2关系表达式的一般形式	72
3.6逻辑运算符与逻辑表达式	73
3.6.1逻辑运算符	73
3.6.2逻辑表达式	73
3.6.3优先级和结合性	74
3.7条件运算符	75
3.8 类型转换	76
3.8.1隐式类型转换	76
3.8.2显式类型转换	78
3.9 运算符的优先级与结合性	79
3.9.1运算符的优先级	79
3.9.2运算符的结合性	80
本章小结	80
习 题	81
第四章 流程控制语句	82
4.1 程序中语句的分类	82
4.1.1 表达式语句	82
4.1.2 函数调用语句	83
4.1.3 空语句	83
4.1.4 复合语句	83
4.1.5 控制语句	84
4.2 顺序结构	84
4.3 选择结构	85
4.3.1if语句实现选择结构	85
4.3.2 条件运算符和条件表达式	92
4.3.3 switch语句	93
4.4 循环结构	96
4.4.1 while语句	96
4.4.2 do-while语句	99
4.4.3 for语句	101
4.5其他控制语句	105
4.5.1 break语句	105
4.5.2 continue语句	106
4.6 嵌套循环	107
4.6.1嵌套循环使用实例	107
本章小结	109
习 题	110
第五章 数组	111
5.1一维数组	111
5.1.1 一维数组的定义	111
5.1.2 一维数组的初始化	112
5.1.3一维数组的数组元素访问	114
5.1.4一维数组的数组元素赋值	115
5.1.5 一维数组的应用	116
5.2 二维数组	117
5.2.1二维数组的定义	118
5.2.2二维数组的初始化	118
5.2.3二维数组的数组元素访问	120
5.2.4二维数组的应用	122
5.3多维数组的逻辑结构和存储结构	124
本章小结	125
习 题	126
第六章 函数	127
6.1函数概述	127
6.2 函数的作用	129
6.3函数定义和使用	129
6.3.1函数的定义与申明	129
6.3.2函数的返回值和返回类型	132
6.3.3函数原型声明与函数调用	133
6.3.4函数调用的过程	135
6.4函数的参数	135
6.4.1形参和实参	136
6.4.2函数调用时的数据传递	136
6.4.3数组作为函数参数	137
6.5函数的嵌套调用	138
 6.6函数的递归	140
6.6.1递归的基本原理	140
6.6.2 递归的使用	141
6.7变量的类型	142
6.7.1 局部变量	142
6.7.2 全局变量	143
6.8变量的存储方式和生存期	143
6.8.1 动态存储和静态存储	144
6.8.2 局部变量的存储类别	144
6.8.3 全局变量的存储类别	146
本章小结	147
习 题	148
第七章 字符串	150
7.1字符串概述	150
7.1.1字符串声明	150
7.1.2字符常量与字符串常量	150
7.1.3字符数组与字符串	151
7.2字符串操作函数	152
7.2.1字符串长度函数	152
7.2.2字符串比较函数	153
7.2.3字符串拷贝函数	154
7.2.4字符串拼接函数	154
7.2.5字符串大小写转换函数	155
7.2.6字符串查找的函数	156
本章小结	158
习 题	159
第八章 编译及预处理	160
8.1 概述	160
8.2文件包含	161
8.3 宏定义	164
8.3.1 不带参数的宏定义	164
8.3.2 带参数的宏定义	165
8.3.3预定义宏	166
8.4条件编译	167
本章小结	170
习 题	171
第九章 指针	172
9.1 地址与指针	172
9.2 变量与指针	173
9.3 指针变量	174
9.3.1 指针变量的定义	174
9.3.2 指针变量的赋值	175
9.3.3 指针变量的引用	176
9.4 指针运算	178
9.4.1指针变量的大小	178
9.4.2指针变量的运算	179
9.5指针与数组	181
9.5.1指向数组元素的指针	181
9.5.2通过指针引用数组元素	182
9.5.3 指针数组	185
9.5.4 通过指针引用多维数组	187
9.6 指向指针的指针	191
9.7 指针与函数	192
9.7.1 指针作为函数参数	192
9.7.2 指针作为函数返回值	193
9.7.3 指向函数的指针	194
9.7.4数组作为函数参数	197
9.8 指针与字符串	198
本章小结	202
习 题	203
第十章 结构体、共用体与枚举类	204
10.1结构体	204
10.1.1结构体的概念	204
10.1.2结构体变量的定义	206
10.1.3结构体的初始化和引用	208
10.1.4 结构的大小	210
10.2结构体数组	213
10.2.1 结构体数组的定义	213
10.2.2 结构体数组的初始化和使用	215
10.3 结构体指针	217
10.3.1 指向结构体变量的指针	218
10.3.2 指向结构体数组的指针	220
10.3.3 结构体变量作函数参数	221
10.4typedef定义类型	225
10.5 用结构体处理链表	227
10.5.1 链表概述	228
10.5.2 内存动态管理函数	229
10.4.4 链表的常用操作	233
10.5 共用体	250
10.5.1 共用体概念	250
10.5.2 引用共用体变量	252
10.5.3 共用体的应用	252
10.6 枚举类型	254
本章小结	258
习 题	259
第十一章 文件	260
11.1 文件	260
11.1.1文件的分类	261
11.1.2文件指针	262
11.2文件基本操作	263
11.2.1打开文件	263
11.2.2 关闭文件	265
11.3文件读写操作	265
11.3.1字符读写函数fgetc()fputc()	265
11.3.2字符串读写函数fgets()fputs()	267
11.3.3格式化读写函数fscanf()fprinf()	269
11.3.4数据块读写函数fread()fwrite()	271
11.4 文件定位	274
本章小结	279
习 题	280
附录 常用C标准库函数	280
1、数学函数	280
1.1 abs()	280
1.2 exp()	281
1.3 pow()	281
1.4 sqrt()	281
2 、时间函数	282
2.1 asctime()	282
2.2 ctime()	283
2.3 clock()	283
2.4 gmtime()	284
2.5 localtime()	284
2.6 difftime()	285
2.7 time()	286
3、其他函数	286
3.1 abort()	286
3.2 atexit()	287
3.3 exit()	288
3.4 rand()srand()	288
3.5 system()	289
3.6 assert()	289
附录 阶段游戏	290
阶段项目()--俄罗斯方块	290
1.1需求分析	290
1.2界面绘制	292
1.2.1 ANSI字符控制	292
1.2.2字符控制的函数封装	294
1.2.3绘制主界面	295
1.2.3绘制方块	297
1.3定时器的使用	303
1.3.1设置定时器	303
1.3.2方块的自动下落	304
1.4键盘控制	304
1.4.1方块左移与右移	305
1.4.2方块的翻转	305
1.5碰撞检测与方块消除	306
1.5.1碰撞检测	307
1.5.2方块消除	307
1.6 分数和等级	308
阶段项目()------贪吃蛇游戏	309
2.1需求分析	309
2.1.1数据结构分析	309
2.1.2模块划分	310
2.2界面显示	315
2.2.1画墙	315
2.2.2画蛇	316
2.2.3画食物	316
2.2.4显示分数	317
2.3 键盘控制	317
2.4碰撞检测	319
2.4.1检测是否蛇碰到墙	319
2.4.2检测蛇是否咬到自己的身体	319
2.4.3检测蛇是否吃到食物	320
2.5分数和级别	320

如果大家有什么需要咨询的,可以扫描下方二维码,我们一起探讨和分享。

在这里插入图片描述

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

贝西奇谈

你的鼓励将是我创作最大的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值