自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(21)
  • 收藏
  • 关注

原创 基于Linux的Flappy bird游戏开发

Ncurses是最早的System V Release 4.0 (SVr4)中 curses的一个克隆和升级。这是一个可自由配置的库,完全兼容旧版本curses。Ncurses构成了一个工作在底层终端代码之上的封装,并向用户提供了一个灵活高效的API(Application Programming Interface 应用程序接口)。它提供了创建窗口界面,移动光标,产生颜色,处理键盘按键等功能。使程序员编写应用程序不需要关心那些底层的终端操作。简而言之,它是一个管理应用程序在字符终端显示的函数库。

2024-07-16 18:24:35 750

原创 KEIL5 MDK的(官网)下载安装(Win11)

需要说明的是Keil5.37版本之后就不自带ARMCC V5编译器了,之前的部分工程使用ARMCC V5编译器更新,使用V6再编译可能出现一些问题,所以可以再安装5的编译器使用。可以从ARM官网下载......

2024-07-11 17:29:10 1046

原创 理解与应用排序算法(快速排序C实现)

稳定排序和非稳定排序设文件f=(R1......Ri......Rj......Rn)中记录Ri、Rj(i≠j,i、j=1……n)的key相等,即Ki=Kj。若在排序前Ri领先于Rj,排序后Ri仍领先于Rj,则称这种排序是稳定的,其含义是它没有破坏原本已有序的次序。内排序和外排序若待排文件 f 在计算机的内存储器中,且排序过程也在内存中进行,称这种排序为内排序。若排序中的文件存入外存储器,排序过程借助于内外存数据交换(或归并)来完成,则称这种排序为外排序。

2024-06-03 15:06:54 1140 1

原创 解锁数据宝藏:高效查找算法揭秘

一、查找的原理1.1 查找概念设记录表L=(R1 R2……Rn),其中Ri(l≤i≤n)为记录,对给定的某个值k,在表L中确定key=k的记录的过程,称为查找。若表L中存在一个记录Ri的key=k,记为Ri.key=k,则查找成功,返回该记录在表L中的序号i(或Ri 的地址),否则(查找失败)返回0(或空地址Null)。1.2 查找方法查找方法有顺序查找、折半查找、分块查找、Hash表查找等等。查找算法的优劣将影响到计算机的使用效率,应根据应用场合选择相应的查找算法。1.3平均查找长度。

2024-06-02 17:58:14 910

原创 【探索数据之美】“从基础到精通——深入解析数据结构与二叉树的秘密“

数据结构中的是一种,它由节点(node)和边(edge)组成。每个节点都有零个或多个,一个节点被称为另一个节点的(parent node)如果它是该节点的直接上一级,而该节点被称为父节点的子节点(child node)。树结构中有一个特殊的节点称为(root node),它位于树的顶部,并且没有父节点。根节点之外的所有其他节点都有一个唯一的父节点。树中没有子节点的节点称为叶节点(leaf node),也称为终端节点(terminal node)。叶节点是树结构中的末端节点,它们没有任何子节点。

2024-05-24 18:47:43 972

原创 栈和队列应用之球鈡问题

球钟问题是一个通过球的移动来记录时间的装置问题,其原理与栈和队列的操作特性密切相关。若分钟指示器中有2个球,五分钟指示器中有6个球,小时指示器中有5个球,则时间为5:32。每过一分钟,球钟就会从球队列的队首取出一个球放入分钟指示器,分钟指示器最多可容纳4个球。当放入第五个球时,在分钟指示器的4个球就会按照他们被放入时的相反顺序加入球队列的队尾。而第五个球就会进入五分钟指示器。按此类推,五分钟指示器最多可放11个球,小时指示器最多可放11个球。

2024-05-15 16:21:11 144

原创 队列的实现

队列是一种特殊的线性表,其特点是在其两端进行插入和删除操作受到限制,只允许在一端(称为队尾)进行插入,而在另一端(称为队头)进行删除。①允许进行存入操作的一端称为“队尾”。②允许进行删除操作的一端称为“队头”。③当线性表中没有元素时,称为“空队”。先进先出(FIFO)规定:front指向队头元素的位置;rear指向队尾元素的下一个位置。在队列操作过程中,为了提高效率,以调整指针代替队列元素的移动,并将数组作为循环队列的操作空间。为区别空队和满队,满队元素个数比数组元素个数少一个。

2024-05-15 16:05:29 576

原创 栈实现及其应用

限制在一端进行插入操作和删除操作的线性表(俗称堆栈)。允许进行操作的一端称为“栈顶”。另一固定端称为“栈底”。当栈中没有元素时称为“空栈”。后进先出(LIFO)。

2024-03-30 21:58:48 437 1

原创 轻松搞定R语言“Warning:In normalizePath(path.expand(path), winslash, mustWork):文件名、目标名或卷标语法不正确”问题

5、新建用户变量,设置变量名为R_User,变量值点览目录,选择RStudio安装目录,最后确定即可。6、然后在输入install.packages("tidyverse"),点击Enter,无报错。初学R易语言在RStudio安装tidyverse包时,会出现如下警告;1、右击此电脑,点击属性。

2024-03-18 18:42:00 480

原创 线性表之单链表(C实现)

考察:逻辑思维能力、编程思路清晰度、对内存管理的应用、对指针的灵活运用。

2024-03-17 23:07:13 644 1

原创 线性表之C语言实现(顺序表)

1、线性表是包含若干数据元素的一个线性序列。La0​......ai−1​ai​ai1​......an−1​L为表名,ai​0≤i≤n−1为数据元素;n为表长,n≥0时,线性表L为非空表,否则为空表。线性表L可用二元组形式描述:L=(D,R);即Data,Relation。即线性表L包含数据元素集合D和关系集合R。

2023-12-21 23:52:59 1506

原创 VS实用调试技巧

bug本意是昆虫”或“虫子”,现在一般是指在电脑系统或程序中,隐藏着的⼀些未被发现的缺陷或问题,简称程序漏洞。“Bug” 的创始人格蕾丝·赫柏(Grace Murray Hopper),她是一位为美国海军工作作的电脑专家,1947年9月9日,格蕾丝·赫柏Harvard Mark II设置好17000个继电器进行编程后,技术人员正在进行整机运行时,它突然停止了工作。于是他们爬上去找原因,发现这台巨大的计算机内部一组继电器的触点之间有一只飞蛾,这显然是由于飞蛾受光和热的吸引,飞到了触点上,然后被高电压击死。

2023-10-23 09:22:15 145

原创 C语言实战1——扫雷游戏(VS2022)

• 使用控制台实现经典的扫雷游戏• 游戏可以通过菜单实现继续玩或者退出游戏• 扫雷的棋盘是9*9的格子• 默认随机布置10个雷• 可以排查雷◦ 如果位置不是雷,就显示周围有几个雷◦ 如果位置是雷,就爆炸并且游戏结束◦ 把除10个雷之外的所有雷都找出来,排雷成功,游戏结束。

2023-10-22 12:44:59 422 1

原创 详解C语言函数

自定义函数与库函数十分相似,有返回值,函数类型和函数参数。一般在使用函数时,直接将函数写出来就使用了。写一个函数判断某一年是否为闰年。//判断一年是不是闰年的函数return 1;printf("是闰年\n");elseprintf("不是闰年\n");return 0;

2023-10-04 15:19:15 158 1

原创 C语言数组

数组的元素都是内置类型的,如果把一维数组做为数组的元素,这时候就是二维数组,把二维数组作为数组元素的数组被称为三维数组,二维以上的数组统称为多维数组。有了下标访问操作符,我们就可以轻松的访问到数组的元素了,比如我们访问下标为7的元素,我们就可以使用 arr[7] ,想要访问下标是3的元素,就可以使用 arr[3]。变长数组的意思是数组的大小是可以使用变量来指定的,在程序运行的时候,根据变量的大小来指定数组的元素个数,而不是说数组的大小是可变的。

2023-09-29 09:44:50 183 1

原创 C语言分支和循环详解

执行语句序列;如果满足某些条件就重复执行语句序列(循环);通过测试选择执行哪一个语句序列(分支);C语言是结构化的程序设计语言,这里的结构指的是。我们日常所见的事情都可以拆分为这三种结构或者这三种结构的组合。我们可以使用实现分支结构,使用实现循环结构。。

2023-09-24 22:13:31 299 1

原创 Keil5的安装与ARM&C51开发环境配置(Win11)

3、打开C51安装目录下的TOOLS.INI文件(使用记事本打开),选中全部并复制。打开MDK安装目录下的TOOLS.INI文件(使用记事本打开),到最后一行进行粘贴。2、打开C51安装目录下的UV4文件夹,将该文件夹下的所有文件(包括该文件夹下的文件夹) 复制粘贴到MDK安装目录下的UV4文件夹中。1、打开C51与MDK的安装目录,把C51安装目录下的C51文件夹复制粘贴到MDK安装目录下。4、在粘贴部分中,把PATH中的路径修改为MDK的路径,然后点击保存。至此,已经实现C51与MDK的共存啦

2023-09-18 17:18:54 5602 5

原创 VSCode+Keil5+cubeMX开发环境搭建

这里是VSCODE官网的下载界面,选择自己需要的配置及版本即可(一般情况下点击Windows即可)。一般点击普通下载就可以了。下载链接下载链接:https://pan.baidu.com/s/1g0nE2yQiRYioQ_4IjLctbA提取码:ykk8注意:网盘失效可联系QQ获取下载链接:3501969901。

2023-09-08 23:45:04 2308

原创 C语言scanf()函数在VS编译器中报错

运行结果:刚学C程序设计的小伙伴们在使用VS编译器时都会有一个疑问?scanf()函数在使用使用时为什么IDE会报错,难到时自己敲错了吗?经过反复检查之后还是没有解决,这时候我们不妨看看报错是怎么描述的:'scanf': This function or variable may be unsafe.Consider using scanf_s instead.To disable deprecation, use _CRT_SECURE_NO_WARNINGS.

2023-08-19 13:08:06 110

原创 C语⾔数据类型和变量

C语⾔提供了丰富的数据类型来描述⽣活中的各种数据。使⽤整型类型来描述整数,使⽤字符类型来描述字符,使⽤浮点型类型来描述⼩数。所谓“类型”,就是相似的数据所拥有的共同特征,编译器只有知道了数据的类型,才知道怎么操作数据。printf() 的作⽤是将参数⽂本输出到屏幕。它名字⾥⾯的 f 代表 format (格式化),表⽰可以定制输出⽂本的格式。return 0;上⾯命令会在屏幕上输出⼀⾏⽂字“Hello World”。

2023-08-17 11:11:49 91 1

原创 初识C语言

C语⾔中有⼀批保留的名字的符号,⽐如: int 、 if 、 return ,这些符号被称为保留字或者关键 字。• 关键字都有特殊的意义,是保留给C语⾔使⽤的。• 程序员⾃⼰在创建标识符的时候是不能和关键字重复的。• 关键字也是不能⾃⼰创建的。C语⾔的32个关键字如下:注:在C99标准中加⼊了 inline 、 restrict 、 _Bool 、 _Comploex 、 _Imaginary 等关键字。不过使⽤最多的还是上⾯的32个关键字。

2023-08-13 18:51:36 150 3

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除