- 博客(11)
- 收藏
- 关注
原创 如何用C语言实现队列
队列(queue)是只允许在一端进行插入操作,而在另一端进行删除操作的线性表。队列是一种先进先出(First In First Out)的线性表,简称FIFO。允许插入的一端称为队尾,允许删除的一端称为队头。今天我们将要用链表的形式来实现一个简单的队列2.队列的定义以及队列的常见基本接口其中,每个节点都有一个我们定义的haha元素来存储值,以及一个指针存储下一个节点的地址。3.队列节点的创建使用malloc函数申请动态内存空间,将空间地址返回,将x赋给val,next赋为NULL4.节点的插入。
2024-05-22 00:08:24
148
原创 c语言实现单链表
我在这里还给节点重新命名为ld,方便后续 代码量的简化,除此之外,我也重新命名了int,方便我们以后对节点值类型的更改(只需要把int改为其他的char long ,就可以改变所有的),非常方便。根据单链表的名字,我们不难画出上面的图,单链表的箭头是从同指向尾部的,这也决定了它的特性,只能从左往右遍历,也就是说,要想找到某一个元素,就必须得知道它的上一个元素。2.它的下一个节点的指针。链表的销毁不同于顺序表,它在空间上时分散开的,因此要一个一个的删,这里我们通过遍历的方式删除。的存储结构,但链表在。
2024-04-17 18:46:58
303
1
原创 用顺序表实现栈
那ok,以上就是今天我要和大家分享的内容,近期通过同顺序表实现一些新功能,也是帮助我更加了解这个结构,往后的博客里,我会增加对代码的一系列讲解,比如说代码是怎么来的啊,这里是怎么理解的啊等等等等。如果今天的分享对你有帮助,请不要吝啬手里的赞哦。8.为了方便验证我们的代码写的是否正确,我还加了一个print函数,用于打印每一个元素,方便我们进行检查。因为我们今天的栈是基于顺序表实现的,所以他们的接口基本相同。今天,我将在这与大家分享怎么用顺序表实现栈的功能。7.栈元素的计算,直接返回top。
2024-04-15 23:53:11
178
1
原创 C++ 入门
当我们的程序中需要大量使用诸如add这样代码量小的函数时,我们可以使用内联函数,可以时函数在被调用时展开,从而避免开辟很多的栈帧空间,但是内联函数也有一个缺点,就是当使用在代码量较大的函数上时,会使生成的可执行程序体积变大,弊大于利。再给他取个别名叫b,这时我们再把1赋值给b,a的值也变成1了,也就可以这样理解,a和b用的是同一块空间,b就是a本身,但值得注意的一点就是,这个别名的指向是不可以转换的。c++除了支持多个相同变量之外,也是可以含有多个函数的,就拿一个简单的add函数来讲。三 .引用(取别名)
2024-04-07 19:40:19
265
原创 如何用C语言实现顺序表
进行扩容时,通常喜欢将原来的容量乘以2,但我刚刚初始化的顺序表容量是为0的,所以这里用三目表达式来判断一下,如果容量为0,就把4赋给它,不为0就乘以2。先断言一下,防止传入空指针然后出bug,接着是容量检查,再利用for循环将目标元素之后的元素往后挪动,最后将值赋给目标元素,别忘了size++。今天,我将向大家介绍如何用C语言实现顺序表,顺序表呢,顾名思义,它是一种线性表,与链表不同,他的逻辑顺序和物理顺序都是线性的滴。1.首先,我们来了解一下顺序表的组成结构,方便我们更快的掌握它。来模拟它的下标和容量。
2024-03-07 14:43:09
354
1
原创 如何用C语言写一个简单的扫雷小游戏
从一开始学习学语言,我就迫不及待的想尝试写一些简单的小游戏,在学习一个月的时候,我就想试一试写一个简单的扫雷,但很可惜,对于只学习了一个月的我,扫雷这样的程序,无论是理解起来还是实操起来还是有点难度的。而一个月后的今天,在观看了不少优秀的博客之后,我通过不断地学习,也终于将扫雷给码出来了,虽说不能说完全靠自己,但在不断的尝试中,也是受益匪浅啊,这里,我将向大家分享一下。check_mine是我们排雷的程序,用于实现玩家与地图的交互,是玩家主要的操作方式。3.InitBroad的实现,二.具体函数的实现。
2023-12-04 20:39:58
453
原创 如何用冒泡排序模拟实现qsort函数
的算法名称的由来就是因为在排序的过程中,按照排序规则(升序或者降序),越小或者越大的元素会经过交换之后慢慢 “浮” 到序列的顶端,就如同水中的气泡一样最终会浮到顶端一样,所以起名为 “冒泡排序”。此函数的原理就是讲单个元素分为x份,x由单个元素大小决定,打个比方,一个int的大小为四个字节,也就是四个char,那么当我们在进行交换的时候,每个元素都会被分为四个部分依次交换。但,很遗憾的是,这种冒泡排序的使用范围很窄,从它的参数就可以看出,它只能排序整形的数组。2.下面是compare函数的实现。
2023-11-29 20:46:03
591
1
原创 如何用C语言写一个简易的回合制游戏(奥特曼格斗进化5)
以上就是我此处分享代码的全部内容,作为初学者,很多地方可能写得过于冗杂繁琐,还请大佬多多指教。于是我针对此发现,捣鼓出了一个基于C语言所开发的简易回合制游戏。
2023-11-19 14:55:30
578
原创 如何用C语言写一个简易的猜数字游戏
在学习C语言时不断尝试新事物,比如说尝试做一些简单的游戏,可以让我们的水平快速提升,且在学习时又不至于那么乏味,接下来,我将给大家分享一篇用C语言写的猜数字游戏,以及从中学到的知识。以上就是猜数字游戏最普通的版本,此外,如果我们像给他增加难度,还可以增加一个变量count来统计你猜的次数,如果猜测超过六次,则开始嘲讽你。1一.首先,我们的程序需要有它最最重要的框架,也就是main函数。1.先生成我们的随机数并设置我们猜的数字。三.在最后,则是我们游戏的主体了。二.其次是我们的菜单。
2023-11-18 18:42:32
202
原创 有关初学C语言的感想
在学习C语言的过程中,你可能会遇到各种各样的错误。而这些概念对于一个初学者而言,无疑是最致命的,如果在短暂的学习后不成热打铁加紧巩固,便会如艾宾浩斯记忆曲线那样很快遗忘掉,遗忘后便不能与后面的知识衔接,很大程度上加大了学习编程的困难,懒惰可谓是劝退了一堆想要自学的同学,因此,学习后加紧时间理解和巩固新学的知识是非常重要的。或许你也和我一样,想有那么一天能够出人头地,迎娶心爱的女孩子,成为父母的骄傲好好光宗耀祖一回,想象你以后靠自己的努力赚够几百万,分一半给父母,拿着另一半和爱人归隐山林,住着茅草房,
2023-11-16 15:08:13
71
2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人