- 博客(7)
- 收藏
- 关注
原创 数据结构-C语言实现链栈
typedef enum//定义bool类型FALSE,//0TRUE//1}bool;typedef struct LinkNode//定义链栈节点int data;}*LiStack;
2023-12-02 13:42:52
49
原创 数据结构-单链表C语言实现
链表是逻辑上连续,物理内存空间不连续的储存结构,每个节点只包含数据域和一直指向下一个节点的指针域为单链表,可以利用指针域找到下一个数据域。
2023-11-28 22:13:34
53
原创 C语言-库函数strlen实现
建立一个新的指针变量存放首元素字符的地址,开始循环后,当不是'\0'时arr_0跳过一个访问对象,最终遇到'\0'时,循环停止,此时,arr_0访问是'\0'前一个元素的地址,用arr_0存放的指针减去初始arr存放的指针,得到就是中间元素的个数。如果是放的是'a' 'b' '\0',my_strlen3('a','b','\0')=1+my_strlen3('a','\0')=1+1+my_strlen3('\0')=2 ......以此类推。
2023-11-10 22:10:31
38
1
原创 C语言-循序渐进的实现简单计算器
2,利用函数指针传参,可以将不同的函数传入cal函数,实现不同函数的调用,并计算,实现代码的复用。但如果要继续添加其他功能,需要添加很多case项,很导致代码变得很长。1,最简单直观的实现方法 ,通过switch语句进行判断,调用不同的函数,进行打印,会发现有很多重复代码。3,建立函数指针数组,通过数组下标访问对应的函数,代码变得简洁,还可以方便的添加其他功能。知识点:函数,switch语句。
2023-11-05 23:06:57
84
原创 C语言-数组指针数组的学习
如果对parr加1,会以int (*)[5]调到下一个元素,由上知,对其**得到arr2首元素地址,对arr2加4再解引用,可得到arr2中下标为4的元素,用如下代码打印出50。中,如果直接对parr解引用,会得到首元素&arr1的地址,同时&arr1代表的是arr1的地址,所以**parr后才会得到arr1,即arr1首元素的地址。建立三个一维数组,取地址后放入一个数组,此为数组指针数组,尝试对所有元素进行打印。分析过程:int (*parr[10])[5]代表其类型时int (*)[5],是。
2023-11-05 17:07:22
34
1
原创 C语言-调整数组使奇数全部位于偶数前面
最先想到的方法就是建立一个新的数组,然后对原数组的每个元素进行判断,如果是奇数就放在新数组的前面,偶数就放在后面。在没有要求顺序的情况下,就想到,奇数从0位(left)开始放,偶数从最高位置(right)开始放,放完之后,left++,right--,就可以完成该效果了。后续思考:该方法需要重新建立一个数组,故需要设置好长度,否则可能会出错,而且不能写成函数的形式。于是就想到,遍历每个元素,如果是该位是奇数,那位置不变,如果是偶数,那就从后往前遍历,如果发现有奇数,就与其交换并结束遍历。
2023-11-04 16:57:30
116
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人