- 博客(22)
- 收藏
- 关注
原创 数据结构:链栈(含完整代码,可复制)
链栈是采用链式存储结构实现的栈,通常用单链表来表示。链栈的优点是不存在栈满上溢的情况(只有在内存溢出时才会出现栈满,通常不考虑)。链栈的栈顶是链表的第一个结点,栈底是链表的最后一个结点,一个链栈可以由栈顶指针唯一确定。链栈的每个结点都包含两个域,数据域和指针域,与单链表的结点结构一样。链栈只能在栈顶进行入栈或出栈操作,类似于一个只能进行头插法或尾插法的单链表。
2024-01-15 10:44:27 860
原创 数据结构:利用顺序栈实现十进制转化为二进制(含注释和完整代码,可复制)
对于十进制转二进制,它可以采用除2取余法,首先不断将十进制除以2,每次记录余数,直到商数为0为止,然后将得到的所有余数全部排列起来,再将它反过来(逆序排列)。下面这段代码是一个用 C 语言实现的数制转换函数,将输入的整数 x 转换为二进制数,并将结果存储在栈 s 中,最后将栈中的二进制数转换为十进制数并返回。总体来说,这段代码通过将输入的整数逐次除以 2 并取余数的方式,将二进制数逐位存储在栈中,然后再逐位将二进制数转换为十进制数并返回。对于第一个关于顺序栈的实现,我在之前的博客里有详细的介绍,
2024-01-14 16:54:00 4798 1
原创 数据结构:顺序栈(含完整代码,可复制)
如果在栈中插入一个元素,因为它先进后出的特点,所以插入的元素在栈顶,成为新的栈顶,并且栈顶的位置要往后移。这个函数比较简单,首先要先建立一个结构体,包含最大空间和栈顶位置。而初始化就是让让栈顶的位置为0。要编写一个顺序栈的代码,首先要了解栈的特点。它是先进后出(或后进先出)的顺序进出元素。首先要确定是否含有栈顶元素,若含有,则将栈顶位置减一并输出被删除的栈顶元素。根据栈先进后出的原则,元素从栈顶开始输出,并将栈顶给下一个元素,接着输出。2.在栈中插入一个元素。
2024-01-13 21:06:17 1464 1
原创 数据结构:线性表的顺序存储操作(含完整代码,可复制)
首先对于线性表的顺序存储,要先确定它是如何实现的。它含有多个函数,下面来具体分析所含有的函数。(完整代码在最后)
2024-01-13 10:47:40 806 1
原创 数据结构:线性表的顺序存储和链式存储,具有插入,删除和查找元素的功能(含完整代码,在最后)
首先要先确定主体,及菜单要包含的内容,有数据的输入,线性表的创建,元素的插入,元素的删除,元素的查找和退出功能。清楚了流程之后便开始写代码。5.在已创建的线性表中插入元素。6.在已创建的线性表中删除元素。7.在已创建的线性表中查找元素。2.结构链表和函数的声明。4.输出所创建的线性表。
2023-09-24 22:17:51 387 1
原创 结构数组定义和使用
struct 结构名{成员列表;struct 结构名 数组名【元素个数】【,数组名【元素个数】,······】;struct 结构名{成员列表;}数组名【元素个数】【,数组名【元素个数】,...】;struct{成员列表;}数组名【元素个数】【,数组名【元素个数】,...】;
2023-09-05 21:32:22 8199
原创 某组有10个人,每个人有3门课的考试成绩,求该组单科的平均成绩和各科总平均成绩(含注释)
单科平均成绩:是指10个人同一门成绩的平均值,总共要求三科的平均值。各科总平均成绩:将求出的三科单科平均成绩相加,再除以3.写代码前要先理解理解题目的意思,知道流程。
2023-09-05 14:22:29 459
原创 C语言:交换2个数的值,不引入第三变量(2种方法)
2种方法需要通过计算,推移,可以自己实践,计算一遍,如果对方法二异或符号(^)不理解的,可以看看我的另一篇博客,里面有讲解异或符号的用法。但是此方法只适用于较小的数进行计算,如果数字太大,则容易出现栈溢出。
2023-02-02 16:35:42 2142
原创 C语言操作符(%,&,|,^,<<,>>)
与,或,异或,取余,左移,右移以二进制形式进行运算,以十进制形式输出结果。或符号|或符号和与符号类似,都是以二进制形式进行运算,十进制输出。但|符号只有2假时才为假,其他情况为真;a=3写成二进制是 00000000000000000000000000000011;a=5写成二进制是 00000000000000000000000000000101;进行或运算 00000000000000000000000000000111;111换算成十进制是7,即输出结果为7;
2023-02-02 16:31:26 1121
原创 C语言二进制(原码,反码,补码)
(0 * 2的零次方) + (1* 2的一次方)+ (0 * 2 的二次方)+(1 * 2的三次方) +(0 * 2的四次方) +(1* 2的五次方) + (0 * 2的六次方) + (0 * 2的7次方) = 0 + 2 + 0 + 8 + 0 + 32 + 0 + 0 = 42。这一般都取决于这个数前面的类型,如果这个数是int型,int占4个字节,一个字节8个比特位,所以这个数的内存为32个比特位,即是由32 个数字组成二进制数字,一般前面补0.首位为0,则为正数。整数的二进制有:原码,反码,补码。
2023-02-02 16:27:00 2123 3
原创 C语言常量(整型、实型、字符型、字符串、符号常量)
对于C语言常量,该文章有详讲,由于文章太长,可参考如下思维导图和目录,可通过目录选择自己所需要的内容阅读。
2023-01-21 19:38:11 13914 3
原创 C语言的数据类型
C语言程序中所用到的每一个常量、变量和函数等程序的基本操作对象都有一种数据类型与之相联系,数据类型决定了数据的取值范围,占用内存的字节数和所能进行的操作。C语言提供了四种数据类型:基本类型、构造类型、指针类型和空类型。构造类型是根据已定义的一个或多个数据类型,用构造的方法来定义的。可以理解为,一个构造类型的值有若干个“成员”或“分量”构成。每个“成员”都市一个基本类型或一个构造类型。基本类型还可以分解为其他类型,主要为整型,字符型和浮点型。指针是C语言中一种特殊的,同时又具有重要作用的数据类型。
2023-01-21 13:26:44 153
原创 c语言:求长方体的体积和表面积
注意输入三边长的格式要和代码中的格式一样,即输入一个数后空格再接着输入第二个数。除此之外,其他几何体的计算代码见于其他博客。
2023-01-21 13:06:33 5115
原创 C语言:计算球体积和表面积(含注释,可复制)
程序中调用printf()函数输出结果时,将引号内除%f以外的内容原样输出,并在第一个%f的位置上输出变量v的值,在第二个位置上输出变量f的值。定义一个符号常量PI,这样程序中凡是需要使用3.14159的地方,都用PI代替,提高了程序的可读性。除了可以计算球,也可以计算其他几何体,如我的其他博客。
2023-01-21 11:11:39 7664
原创 C语言:求某一天是这年的第几天
如果要求某一天是这年的第几天,就要知道前面几个月的天数,以及本月的天数,然后相加。与之类似的求某年某月的天数也可以用类似方法, 详情请看我的另一边博客。
2023-01-16 12:15:00 666
原创 c语言:求某年某月的天数(2种方法)
如果要求某年某月的天数,除了2月的天数会跟是否是平年闰年有关,其他月份的天数都是固定的,所以2月是这里的特殊值,要想知道2月的天数,必须要知道那一年是平年还是润年,以下提供2种思路。
2023-01-16 12:01:21 14473 9
原创 C语言:编写程序,输出乘法口诀表
乘法口诀表相信大家都不陌生,那么如何可以既美观又正确的输出乘法口诀表呢?你要先找出口诀表的规律,设内外2个循环,控制输出,还要记得换行。可复制,可运行,有注释。
2023-01-15 19:10:09 1655 1
原创 C语言:判断一个数是否为素数(3种方法,含注释)
首先要先明白素数的定义:除了1和本身之外,没有其他的因数的数,即不能被其他数整除。同时要注意,1不是素数。以下为判断素数的3中方法,可复制。
2023-01-15 16:11:18 110442 44
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人