《C语言技术体系》 学习路线总目录 + 思维导图
目录
前言
正文
思维导图
第1章 流程结构
1.1 初识C语言
1.2 流程结构
1.3 数据类型
1.4 运算符表达式
第2章 指针与数组
2.1 指针基本概念
2.2 一维数组
2.3 二维及多维数组
2.4 指针与数组
第3章 模块化重构
3.1 函数
3.2 typedef类型定义
3.3 enum枚举
3.4 #define宏替换
3.5 全局变量与局部变量
3.6 const常量
3.7 extern外部变量
3.8 static静态变量
3.9 栈内存与堆内存
3.10 函数递归
3.11 组件化封装
第4章 字符串
4.1 字符串原理
4.2 字符串API用法与仿真
4.3 组件化封装《字符串组件》
第5章 结构体与数据结构
5.1 结构体
5.2 联合体
5.3 线性表与链表
第6章 文件
6.1 文件的基本处理
6.2 文本文件与二进制文件
6.3 C语言结束项目
结语
前言
本篇文章是对专栏《C语言技术体系》中所有文章及知识点进行总结归档,C语言是最底层也是最核心的语言,要想走上程序员这条道路应该都绕不开它吧。那么这篇超详细C语言目录就奉上了,同学们可以直接根据需要点击连接查看呦!
那么有已经学完C语言,开始进阶C++方向的同胞们也可以查看现在正在更新的专栏《C++进阶之路》,希望对你能有所帮助。
正文
思维导图
那么话不多说,直接上思维导图:
目录
第1章 流程结构
1.1 初识C语言
1.1.1【C语言】 从源代码到exe
1.1.2【C语言】 初识C语言--面向过程的语言
1.1.3【C语言】 printf格式化打印
1.1.4 printf练习题
用printf的格式化打印如下“效果”及计算结果
求368元从大面值到小面值需要哪些张不同面值的人民币
1.1.5【C语言】 变量的使用方法
1.1.6【C语言】 scanf键盘输入
1.1.7【C语言】 scanf的一些细节
1.1.8 练习题
- 交换算法 输入4个不同的整数到a,b,c,d四个变量中,彼此交换它们的值并打印验证。
- 为变量n输入一个4位数,例如:1234编程:把n的值倒序存入一个变量m。 此时m的值应为:4321打印n与m的值: 12344321
- 《计算圆球表面积和体积》
1.2 流程结构
1.2.1 【C语言】 顺序结构
1.2.2 【C语言】 选择结构 if二选一
1.2.3 【C语言】 选择结构 switch多选一
1.2.4 【C语言】 循环结构 while每当型
1.2.5 【C语言】 循环结构 do while直到型
1.2.6 【C语言】 循环结构 for万能型
1.2.7 练习题
- 顺序结构练习题
- 选择结构练习题(if二选一)
- 选择结构练习题(switch多选一)
- 循环结构练习题(while循环)
- 循环结构练习题(do while循环)
- 循环结构练习题(for循环)
1.3 数据类型
1.3.1 【C语言】 数据类型 整型以及进制
1.3.2 【C语言】 数据类型 字符型
1.3.3 【C语言】 看图说话-字符在屏幕上的显示原理
1.3.4 【C语言】 数据类型 浮点型
1.3.5 【C语言】 看图说话-溢出现象
1.3.6 【C语言】 数据类型 类型转换
1.3.7 【C语言】 看图说话-基本数据类型-自动类型转换规律
1.3.8 【C语言】 看图说话-基本数据类型
1.4 运算符表达式
1.4.1 【C语言】 运算符表达式
1.4.2 练习题
- 水仙花数
- 日上三竿
- 打印n以内的所有素数
1.4.3 【C语言】 短路问题
第2章 指针与数组
2.1 指针基本概念
2.1.1 【C语言】 指针基本概念
2.1.2 【C语言】 指针变量类型的作用
2.1.3 【C语言】 多级指针
2.1.4 【C语言】 经典面试题-大端存储·小端存储
2.2 一维数组
2.2.1 【C语言】 一维数组
2.2.2 【C语言】 一维数组反向输出
2.2.3 【C语言】 一维数组求和
2.2.4 【C语言】 一维数组求最大数
2.2.5 【C语言】 一维数组首尾对调
2.2.6 【C语言】 一维数组换位问题
2.2.7 【C语言】 顺序查找
2.2.8 【C语言】 数组排序
2.2.9 【C语言】 折半查找
2.2.10 【C语言】 约瑟夫问题
2.2.11 【C语言】 一维数组·名·特性
2.2.12 【C语言】 一维数组项目实战:UML用例驱动分析与《贪吃蛇》代码实现
2.3 二维及多维数组
2.3.1 【C语言】 二维数组·名·特征
2.4 指针与数组
2.4.1 【C语言】 一维数组与指针
2.4.2 【C语言】 二维数组与指针
2.4.3 【C语言】 指针类型的扩展——指针数组
2.4.4 【C语言】 指针类型的扩展——数组指针
第3章 模块化重构
3.1 函数
3.1.1 函数与重构思想的关系及意义
3.1.2 C语言 函数在源代码中的三种状态
3.1.3 C语言 函数的执行原理
3.1.4 函数指针基本概念与用法
3.2 typedef类型定义
3.2.1 【C语言】 typedef
3.3 enum枚举
3.3.1 【C语言】 枚举类型enum
3.4 #define宏替换
3.4.1 【C语言】 宏define
3.5 全局变量与局部变量
3.5.1 【C语言】 全局/局部变量生命周期与作用域
3.6 const常量
3.6.1 【C语言】 const
3.7 extern外部变量
3.7.1 【C语言】 extern
3.8 static静态变量
3.8.1 【C语言】 static静态变量
3.9 栈内存与堆内存
3.9.1 【C语言】 堆区与栈区的区别
3.10 函数递归
3.10.1 【C语言】 函数递归调用原理
3.11 组件化封装
3.11.1 【C语言】 静态库与动态链接库
第4章 字符串
4.1 字符串原理
4.1.1 【C语言】 字符、字符数组、字符串
4.1.2 【C语言】 字符串存储原理
4.1.3 【C语言】 看图说话-字符串原理
4.2 字符串API用法与仿真
4.2.1 【C语言】 字符串-得到字符串长度
4.2.2 【C语言】 字符串-字符串的复制
4.2.3 【C语言】 字符串-字符串的拼接
4.2.4 【C语言】 字符串-字符串的比较
4.2.5 【C语言】 字符串-字符串的匹配
4.2.6 【C语言】 字符串-字符串类型转换
4.2.7 【C语言】 字符串-字符串键盘输入
4.3 组件化封装《字符串组件》
4.3.1 【C语言】 封装静态库/动态链接库
第5章 结构体与数据结构
5.1 结构体
5.1.1 【C语言】 结构体
5.2 联合体
5.2.1 【C语言】 共用体
5.2.2 【C语言】 struct与union结构体联合体
5.3 线性表与链表
5.3.1 【C语言】 链表
5.3.2 【C语言】 链式存储与顺序存储
第6章 文件
6.1 文件的基本处理
6.1.1 【C语言】 文件操作
6.1.2 【C语言】 文件复制原理
6.2 文本文件与二进制文件
6.2.1 【C语言】 文件处理模型
6.3 C语言结束项目
6.3.1 【C语言】 通讯录系统
结语
以上就是C语言技术体系的全部内容了,希望对你的学习有帮助,我们山顶见!
相关文章:
《C语言技术体系》 学习路线总目录 + 思维导图
目录 前言 正文 思维导图 第1章 流程结构 1.1 初识C语言 1.2 流程结构 1.3 数据类型 1.4 运算符表达式 第2章 指针与数组 2.1 指针基本概念 2.2 一维数组 2.3 二维及多维数组 2.4 指针与数组 第3章 模块化重构 3.1 函数 3.2 typedef类型定义 3.3 enum枚举 3.…...
数字图像处理简答题
目录 1.人类视觉对颜色的主观感觉包括哪三类? 2. 图像成像的过程包括哪三步? 3.图像的采样和量化分别指什么? 4、取k8时,将下图用相应矩阵表示 5、简述当限定了数字图像的数据量时采样和量化参数的选择遵循哪两条原则&#x…...
【Java校招面试】基础知识(五)——GC
目录 前言一、基础概念二、垃圾回收算法三、垃圾收集器四、引用后记 前言 本篇主要介绍Java垃圾回收机制——GC的相关内容。 “基础知识”是本专栏的第一个部分,本篇博文是第五篇博文,如有需要,可: 点击这里,返回本专…...
使用CMake调用Makefile 项目
目录标题 基本示例Cmake传递lib给MakefileCmake传递参数给Makefile,比如make cleanWindows下使用Cmake调用Makefile 基本示例 如果项目是使用传统的Makefile构建的,并且您希望使用CMake调用这些Makefile,您可以使用CMake的add_custom_target…...
快速傅里叶变换FFT学习笔记
点值表示法 我们正常表示一个多项式的方式,形如 A ( x ) a 0 a 1 x a 2 x 2 . . . a n x n A(x)a_0a_1xa_2x^2...a_nx^n A(x)a0a1xa2x2...anxn,这是正常人容易看懂的,但是,我们还有一种表示法。 我们知道…...
如何下载安装驱动
1 打开浏览器 这里以Edge浏览器举例 第一步打开桌面上的Edge浏览器 如果您的桌面上没有 那么找到搜索栏 搜索Edge 然后打开 打开之后一般是这样 然后把我发送您的地址 驱动下载地址 https://t.lenovo.com.cn/yfeyfYyD (这个网址只是一个例子) 删除掉前…...
鸿蒙Hi3861学习四-Huawei LiteOS介绍
一、什么是LitesOS Huawei LiteOS是华为针对物联网领域推出的轻量级物联网操作系统,是华为物联网战略的重要组成部分,具备轻量级、低功耗、互联互通、组件丰富、快速开发等关键能力。基于物联网领域业务特征打造领域性技术栈,为开发者提供“一…...
Vue核心 收集表单数据 过滤器
1.14. 收集表单数据 收集表单数据: 若: ,则v-model收集的是value值,用户输入的就是value值。若: ,则v-model收集的是value值,且要给标签配置value值。若: 没有配置input的value属性,那么收集的就是checked(勾选 or 未…...
华为EC6108V9E/EC6108V9I_rk3228_安卓4.4.4_通刷_卡刷固件包
华为EC6108V9E/EC6108V9I_rk3228_安卓4.4.4_通刷_卡刷固件包-内有教程 特点: 1、适用于对应型号的电视盒子刷机; 2、开放原厂固件屏蔽的市场安装和u盘安装apk; 3、修改dns,三网通用; 4、大量精简内置的…...
数字化转型导师坚鹏:面向数字化转型的大数据顶层设计实践
面向数字化转型的大数据顶层设计实践 课程背景: 数字化背景下,很多企业存在以下问题: 不清楚大数据思维如何建立? 不清楚企业大数据分析方法? 不了解大数据应用成功案例? 课程特色: …...
day27_mysql
今日内容 零、 复习昨日 一、单表查询 二、多表联查 零、 复习昨日 1 DDL,DML,DQL是啥 DDL 数据定义语言(库,表,列)DML 数据操作语言(表内数据的操作增删改)DQL 数据查询语言(表内数据的查询&am…...
QwtPlotCurve使用说明
QwtPlotCurve是Qwt库中用于绘制曲线的类,可以在QwtPlot上绘制各种类型的曲线,如折线、样条线、散点等。以下是QwtPlotCurve的一些常用函数和使用说明: setSamples(const QPolygonF &samples):设置曲线的数据点,参数…...
JS逆向 -- 某平台登录加密分析
一、打开网站,使用账号密码登录 账号:aiyou123.com 密码:123456 二、通过F12抓包,抓到如下数据,发现密码加密了 三、加密结果是32位,首先考虑是md5加密。 四、全局搜索pwd,点击右上角…...
一分钟快速实现Flask框架的蓝图和视图
一分钟快速实现Flask框架的蓝图和视图 Flask是一个轻量级的Web应用框架,非常适合快速开发小型的Web应用。Flask框架使用蓝图(Blueprint)和视图(View)的概念来组织应用程序的代码。在本文中,我们将介绍如何…...
Mysql 约束练习【第13章_约束】
#第13章_约束 /* 基础知识 1.1 为什么需要约束? 为了保证数据的完整性! 1.2 什么叫约束?对表中字段的限制。 1.3 约束的分类: 角度1:约束的字段的个数 单列约束 vs 多列约束 角度2:约束的作用范围 列…...
java调用cmd命令
1.首先,我们需要了解一下 java是如何调用 cmd的: 6.在实际的开发中,我们有可能会遇到 java调用 cmd命令的情况: 7.对于一些特定的环境下,例如在嵌入式系统中,那么我们可以使用下面这种方式来调用 cmd命令&a…...
Qt音视频开发36-超时检测和自动重连的设计
一、前言 如果网络环境正常设备正常,视频监控系统一般都是按照正常运行下去,不会出现什么问题,但是实际情况会很不同,奇奇怪怪七七八八的问题都会出现,就比如网络出了问题都有很多情况(交换机故障、网线故障、带宽故障等),所以监控系统在运行过程中,还得做超时检测,…...
Reactor 第九篇 WebFlux重构个人中心,效果显著
1 重构背景 原有的开发人员早已离职,代码细节没人知道,经过了一段时间的维护,发现有以下问题: 个人中心系统的特征就是组装各个业务的接口,输出个人中心业务需要的数据,整个系统调用了几十个第三方业务线的…...
Vben Admin 自学记录 —— Drawer组件的基本使用及练习(持续更新中...)
Drawer 抽屉组件 对 antv 的 drawer 组件进行封装,扩展拖拽,全屏,自适应高度等功能。 Drawer相关使用及概念 练习 —— 在之前table基础上,添加查看功能,点击查看按钮,弹出抽屉显示单条表格数据…...
Android 9.0 根据包名默认授予app悬浮窗权限
1.概述 在9.0的设备开发中,对于在app中授予悬浮窗权限,也是通常用的功能,但在设备产品中预制app,需求要求默认授予悬浮窗权限, 就不需要在app中动态申请悬浮窗权限了,所以就来分析下这个实现这个功能 2.根据包名默认授予app悬浮窗权限的核心类 packages\apps\Settings\s…...
Swift中Data,String,[UInt8]的相互转换(6种互相转换)
var dataData() var array[UInt8]() var str"" //Data[UInt8] data.append(10) array[UInt8](data) print(array)//[10] //[UInt8]转Data array[1,2,3,4,5] dataData(array) print(data.count)//5 //Data转String data.removeAll() data.append(contentsOf:[0x31,…...
【微软Bing王炸更新】无需等待,人人可用,答案图文并茂,太牛了
🚀 AI破局先行者 🚀 🌲 AI工具、AI绘图、AI专栏 🍀 🌲 如果你想学到最前沿、最火爆的技术,赶快加入吧✨ 🌲 作者简介:硕风和炜,CSDN-Java领域优质创作者🏆&am…...
腾讯云的cdn怎么配置|腾讯云CDN配置教程
众所周知,WordPress系统不挂加速或者是服务器不好速度贼慢,所以要想办法解决访问速度的问题,经过我不断的研究腾讯云的CDN,因为我用的是zibll子比主题,不懂的就挂会导致无法使用第三方登录,因为有缓存导致一直不回调一直卡在那个登录界面和支付没反应要么出现二维码,要么…...
数据结构入门-顺序表链表
线性表 线性表(linear list)是n个具有相同特性的数据元素的有限序列。线性表是一种实际中广泛使用多个数据结构,常见的线性表:顺序表、链表、栈、队列、字符串... 线性表在逻辑上是线性结构,也就说是连续的一条直线。…...
【AWS入门】AWS Lamda
目录 创建一个Lamda函数用Lamda函数控制启停EC2实例创建一台EC2实例创建角色创建lamda函数 使用Amazon EventBridge计划启停实例创建EventBridge 用户往S3存储桶上传图片文件,触发Lambda函数,将图片压缩并上传至另一个存储桶创建两个存储桶通过Cloudform…...
牛客刷SQL题Day5
SQL69 返回产品并且按照价格排序 select prod_name , prod_price from Products where prod_price between 3 and 6 select prod_name , prod_price from Products where 6>prod_price and prod_price >3 踩坑1: between......and.......包括边界。 踩坑2&am…...
【Errors】【计算机图形学】A-SDF复现的一点纠正记录
ICCV 2021的工作A-SDF,在跑的过程中可能是一些版我Run了这篇工作代码的Reconstruction,然后出现了一点小小的错误,记录如下。 问题一:对数据做直接修改导致出错(可能是不同的pytorch版本导致的?) 错误描述…...
Dockerfile创建镜像文件
Dockerfile Docker镜像原理 Linux文件系统有bootfs和rootfs两部分组成 Docker镜像由特殊文件系统叠加 最底端bootfs,使用宿主机bootfs 第二次时rootfs,被称为基础镜像 向上可以叠加其他镜像文件 同一文件系统能将多层整合成一层,隐藏了多层存在 镜像可以放置…...
javascript中的严格模式
认识严格模式: 在ECMAScript5标准中,JavaScript提出了严格模式的概念(Strict Mode): 严格模式很好理解,是一种具有限制性的JavaScript模式,从而是代码隐式的脱离了“懒散(sloppy)模…...
(二)【平衡小车制作】电机驱动(超详解)
一、硬件设计 1.直流减速电机 直流减速电机,即齿轮减速电机,是在普通直流电机的基础上,加上配套齿轮减速箱。齿轮减速箱的作用是,提供较低的转速,较大的力矩。 简单的来说,STM32分配两个IO口给一个…...
汽车网站建设策划书/品牌营销推广要怎么做
response.setHeader("Access-Control-Allow-Origin", "*");但是这种方式并不能解决所有场景下的问题参考如下文章:http://blog.csdn.net/newjueqi/article/details/27058765下载cors-filter-1.7.jar,java-property-utils-1.9.jar这两…...
wordpress 获取时间/私人网站服务器
题目链接 长度为\(i\)的不降子序列个数是可以DP求的。 用\(f[i][j]\)表示长度为\(i\),结尾元素为\(a_j\)的不降子序列个数。转移为\(f[i][j]\sum f[i-1][k]\),其中\(k\)满足\(k<j\)且\(a_k\leq a_j\),可以用树状数组\(O(n^2\log n)\)解决。…...
婚礼礼网站如何做的/营销渠道有哪些
转载自:https://www.cnblogs.com/birdsmaller/p/5377104.html 背景 涉及身份验证的系统都需要存储用户的认证信息,常用的用户认证方式主要为用户名和密码的方式,为了安全起见,用户输入的密码需要保存为密文形式,可采用…...
哪个网站做脚本/抖音seo关键词优化怎么做
chown (change owner) 更改所有者 查看系统所有用户 这里面都是系统默认的用户 [rootevan-01 ~]# cat /etc/passwd root:x:0:0:root:/root:/bin/bash bin:x:1:1:bin:/bin:/sbin/nologin daemon:x:2:2:daemon:/sbin:/sbin/nologin adm:x:3:4:adm:/var/adm:/sbin/nologin lp:x…...
做网站太麻烦了/免费下载app并安装
感觉很水。 因为SAM上一个点的子树大小代表这个点所表示子串的出现次数。 建出广义后缀自动机之后。在\(parent\)树上跑\(DP\),维护\(size[i][1]\),和\(size[i][0]\)代表i的子树中有多少第一个串的结束节点和第二个串的结束节点,然后答案就是\(size[i][0…...
查企业去哪个网站/网络推广员是干嘛的
我的上篇博客【我心目中的Asp.net核心对象】 讲述了一些我认为在Asp.net中比较重要的核心对象,以及演示了直接使用它们也能实现一个简单的服务响应。今天,我将继续把我认为Asp.net的另一些重要的内容拿出来与大家一起分享, 同时将使用本次所讲…...