自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 C++容器之map与set(快速上手)

使用前第一点,别忘记包含头文件<map>map为关联容器,他可以按照一定的顺序(根据key值比较)进行存储键值对(<key,value)元素,键值key的作用为控制存储元素时的顺序和标识元素的唯一标志。value可以存储为与key相关的内容信息。键值key与值value两者的类型可以不相同,主要就看使用者想如何存储。在map的内部,key和value是通过value_type(pair)进行绑定在一起的。其底层结构为红黑树(高度平衡的二叉搜索树)。

2024-03-15 20:16:22 622 1

原创 C++入门学习二(构造函数和析取函数)

构造函数是一个特殊的成员函数,其名字与类名相同,创造类的类型对象时编译器自动调用,其主要完成初始化工作,即给每个数据成员一个合适的初始值,并且在对象整个生命周期内只调用一次。

2023-11-09 23:07:45 86

原创 C++初阶学习1

命名空间的目的就是对标识符的名称进行本地化,以避免命名冲突或名字污染。用namespce 关键字进行处理。其定义为 namespce 关键字,后面跟要定义的命名空间的名字,再跟一对 { },命名空间的成员即在 { }中。namespce(关键字) + 命名空间的名字 {//变量int a;//函数//类型int val;char ou;注意:命名空间内可以定义变量 / 函数 / 类型。另外,还要注意的一点为,命名空间是支持嵌套的。int a;int val;char ou;

2023-10-31 23:52:41 113 3

原创 数据结构:八大排序详解(插入、希尔、选择、堆、冒泡、快速、归并、计数)

堆排序即为,先对原数组元素建堆(升序建大堆,降序建小堆),之后每次交换根节点与最后一个元素的值,此时最后一个元素一定为其整个数组的最大值或最小值,因此最后一个元素就已经调整好了,之后再调整根节点(向下调整算法),在进行根节点与倒数第二位元素交换................直至所有元素均在合适位置上。而希尔排序,其步长是变化的,但最后会变为1,步长为几,则就有几组,为1,则说明所有元素为1组。那么,对整个无序的数组进行插入排序,则就是依次对数组的每个元素都进行插入,找到自己的合适位置。

2023-10-14 23:30:27 164 1

原创 数据结构:二叉树

对于二叉树的大体知识来说,建立一个基本的二叉树是较为简单的,采取最笨的方法就只需要申请节点空间,然后将申请的节点进行链接即可。其次,在学习二叉树时,其中一个十分重要的方法就是递归方法,当然递归可以实现,非递归也可以,无论是递归还是非递归,其都蕴含了一个十分重要的思想那就是分治思想。分治思想可以说是整个二叉树的核心。我们主要进行实现二叉树的其他操作。大概可以分为这几个部分:1. 二叉树的前序、中序、后序三大基本遍历,和一种特殊层序遍历。2. 二叉树的总节点个数。

2023-09-23 11:42:20 63 1

原创 数据结构:队列(C语言)

队列也是一种特殊的线性表,其只允许在一端进行数据的插入操作,在另一端进行数据的删除操作。进行数据插入的一端称为队尾,进行数据删除的一端称为队头。其队列中的数据元素遵循先进先出(后进后出)原则。数据的插入也叫做入队列,其操作是在队尾完成的。数据的删除也叫做出队列,其操作是在队头完成的。

2023-09-06 19:33:59 263 1

原创 数据结构:栈

栈是一种特殊的线性表,只允许在其固定的一端进行插入和删除元素操作。其栈中的数据元素遵循先进后出(后进先出)原则。栈的插入操作也叫做进栈 / 入栈 / 压栈,其操作完成在栈顶。栈的删除操作也叫做出栈。其操作完成也是在栈顶。

2023-09-05 20:23:43 64

原创 C语言内存函数(memcpy、memmove、memcmp)详解

memove函数为内存移动函数,也就是将来源空间内容移动到目的地空间之中。相当于拷贝。其参数类型和返回值和memcpy完全相同,其含义为将source(来源)前num个字节数空间的内容移动到destination(目的地)空间之中,和拷贝含义几乎相同。这就过多介绍了。其用法也基本相同,只不过,memmove函数可以处理重叠内存空间的拷贝。直接看实例memcmp函数为内存比较函数,其与字符串比较函数strcmp函数相像,不同的是memcmp函数可以既可以比较整形、浮点型,也可以比较字符串。

2023-07-21 11:06:38 9145 1

原创 浮点数在内存中的存储(C语言)

像十进制的小数 5.5 --->其转化为2进制数为101.1,小数点前的101表示(从后向前) 1 * 2 ^ 0 + 0 * 2 ^ 1 + 1 * 2 ^ 2 = 5,小数点后的1为1 * 2 ^ -1 = 0.5,其转化原则就为如此。所以规定,存入内存时的E的真实值必须再加上一个中间数,对于8位的E,这个中间数为127,对于11位的E,这个中间数是1023。如十进制数0.5 --->表示为2进制为0.1 --->转化为标准形式为(-1)^ 0 *1 * 2 ^ -1,因此此时E为-1。

2023-07-20 20:32:56 91 1

原创 (万字)最详细C语言实现火车售票系统

对于我的这个火车系统,主要功能包括8项,因为全程是使用C语言实现的,所以功能较为简单,内部二级菜单里是分为了班次和用户的模块,具体看二级菜单模块,我这一版本可以说是最基础的版本。对于订票来说,我们要先让用户输入想要查询的车次名称,并且要对用户输入的车次名称进行查询处理判断车次名称是否存在,存在后我们在让用户输入个人信息,这一步也正是录入用户信息的第二种模式。改:对于用户来说,先进行输入用户的身份证号,判断其用户是否存在,若存在,则可进行选择其修改的信息,选择后进行修改即可。车次和用户的查询基本相同。

2023-06-10 23:46:22 4630 12

原创 C语言实现简单扫雷游戏

所以此时我们则需要思考一个问题,就是位于边界的棋位,它的四周如果为9 * 9的,那么就会出现越界访问,所以,真实的棋盘应该为11 * 11的,而出现在玩家眼前的还是9 * 9的棋盘,这样就不会出现数组越界访问的问题,还能使用户保持观感。扫雷实现的方法有很多,在这里我们用两个二维数组的方法,一个存放我们布置好的雷的棋盘,另一个存放每个棋位周围雷的个数,所以第二个二维数组是我们展现给用户的棋盘。以上就是简单扫雷游戏的实现,后续我将继续完善其展开一片的效果,请持续关注噢!所以,思路有了,下面就是代码的实现。

2023-05-21 23:46:53 75 2

原创 史上最详细C语言实现三子棋(近六千字)

当然我这里判断平局也用了一个函数Pingju(board, Hang, Lie),它是有返回值的,因为我要根据它的返回值来判断它是不是平局,是就返回1,不是就返回0,当然,既没有胜利,也没有平局,那就说明棋局要继续下。3.1 承接上文,我们已经可以在棋盘上进行下棋了,那么关键的来了,就是实现我们对于胜负的判定,我们知道三子棋胜利就是三个子连在了一起就胜利了,所以我们要实现的也是这一部分,当然如果最后棋盘都被下满了,都没有获胜,那就是平局了。综上,棋盘则就完成了,下面就是下棋实现。

2023-05-10 23:42:09 171 2

原创 首篇博客--致自己

编程在我看来,是一个很长期的过程,坚持方能成功,所以在未来学习编程的过程中,我想学好编程,则要耐得住寂寞,持之以恒,那么,自己的编程能力也会提升的很快。Hello,大家好,我来自山东,现阶段呢是一名大一的学生,这是我的首篇博客,也是我记录自己的一个起点,希望大家可以多多指教。在学习编程过程中,我打算前期一天花费2到3小时,然后到了后期,看看自己的程度,必须要把知识弄明白,无论花多少时间。现阶段呢自己编程的基础并不太牢固,所以现阶段的目标就是打好自己的基础,而未来的目标就是成为一个优秀的编程员。

2023-04-01 10:37:58 80 1

空空如也

空空如也

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

TA关注的人

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