c语言
文章平均质量分 89
初夏0
这个作者很懒,什么都没留下…
展开
-
排序3——C语言
让每一个数都减去最小值,那么如果有负数,减去最小值(也是负数,可能是本身)之后的值肯定大于等于0,就可以满足数组的下标了。将序列分割,若子区间无序,对子区间再分割,直至子区间有序(只有一个数时)再进行合并(相当于合并两个有序数组)。不稳定,例子如下图,时间复杂度O(N*logN)空间复杂度O(logN)不稳定,例子如下图,时间复杂度O(N*logN)空间复杂度O(1)归并排序的缺点,空间复杂度为O(N),即额外需要一块辅助空间。不稳定,例子如下图,时间复杂度O(N^2)空间复杂度O(1)原创 2024-04-24 16:38:24 · 1131 阅读 · 0 评论 -
排序2——C语言
交换排序的基本思想:所谓交换,就是根据序列中两个记录键值的比较结果来对换这两个记录在序列中的位置。交换排序的特点是:将键值较大的记录向序列的尾部移动,键值较小的记录向序列的前部移动。原创 2024-04-23 16:06:31 · 717 阅读 · 0 评论 -
【部分C语言函数解析】
大家可以在下面这个网站上学习C以及C++,里面内容很多,很详细。使用下面的函数需要包含一个头文件。原创 2024-02-15 14:57:23 · 854 阅读 · 1 评论 -
简易扫雷(仅用函数和数组实现)
扫雷是一款比较传统的游戏,游戏规则是,选择一个格子,如果不是雷,则安全,继续寻找其他雷,如果是雷,游戏结束。当找到全部的雷时,游戏则通过。如上,游戏失败,点击的格子中的数字代表周围的格子一共有那么多个雷。中间的2代表周围有2个雷中间的1代表周围有1个雷,根据最中间的1,得到还未点击的格子就一定是雷。这里仅用函数和数组外加一些细小知识,带大家实现一个简易的扫雷,使大家学到的知识得到运用。原创 2024-01-28 13:51:31 · 807 阅读 · 1 评论 -
指针解析(3)
由于(二)的内容较少也比较简单,这里就不带大家复习了,直接进入正题。原创 2023-12-19 16:45:30 · 847 阅读 · 1 评论 -
指针解析(2)
上节我们介绍了创建指针变量和指针变量类型及其意义,指针加减整数和指针减指针的内容,还有一个小小的应用。指针变量是存储地址的变量,需要用到&符号,名叫取地址操作符,创建指针变量时需要给定变量类型变量名,和赋初值,如果不赋初值会导致一个野指针的问题,关于野指针,本节会介绍到。//整型指针变量//字符指针变量,不知道赋值什么时,可以给一个NULL指针//数组指针,//函数指针return 0;原创 2023-12-17 16:08:45 · 941 阅读 · 1 评论 -
指针解析(1)
内存是被划分为一个一个小的内存单元的,每个内存单元大小是一个字节,而每个内存单元又有一个编号,这个编号就是地址。而指针就是存储这个地址的,指针可以认为是地址,通常说的指针是指针变量。原创 2023-12-09 16:31:27 · 967 阅读 · 1 评论 -
C语言 分支和循环
在C语言里,支持三种结构,分别是选择,顺序和循环结构,顺序结构简单明了,一步步的从上到下,从左到右走完全程即可。分支和循环结构就比较复杂,接下来将介绍一下这两种结构。原创 2023-12-02 15:59:37 · 824 阅读 · 0 评论 -
值的集合——数组
(p+i)中的*代表解引用,表示通过这个指针找到指针指向的这个数据。在依次循环,打印数据。原创 2023-12-03 14:46:12 · 804 阅读 · 1 评论 -
结构体小剖析
在C语言中有很多的内置的数据类型,方便我们去使用,比如整形,字符型,浮点型等等,还有短整型,长整型,就不一一列举了。但是创建这些类型的变量,变量的类型就只能是它们,那有没有一种数据类型,可以存储不同的数据呢?当然有的,就是结构体了。int i = 0;char c = 0;原创 2023-12-02 11:52:58 · 761 阅读 · 0 评论 -
关于大小端的介绍
对于0x11223300这个数来说,11是数值较大的一端,也就是通常说的高位,00这一端是低位,数值大的存在了高地址处,数值小的存在了低地址处,所以我的电脑是以小端字节序存储。a里保存了一个16进制的数字11223344,将a的地址取出,强转为char*类型,保存在ch这个指针变量,对ch进行解引用并赋值为0,最后以16进制的形式打印a的值,这段代码就解读完了。可以看到,最后的44改为了00,通过指针(1)的学习,知道了,char*类型的指针解引用可以访问一个字节。原创 2023-12-10 15:55:45 · 349 阅读 · 1 评论