- 博客(48)
- 收藏
- 关注
原创 【C语言】顺序表(二)
seqlist.hseqlist.c空间不够,需要怎么做呢?答案是:申请空间什么时候为空间不够?答案是:当有效数据个数跟空间的容量相同时问题来了,动态顺序表可以增容,那么我们要增加多大的空间呢?malloc:申请一块连续的空间realloc:在原数组的基础上继续增加空间、所以我们选择使用realloc回到上一个问题,空间不够需要增容,那么要增多大呢?第一种方法:一个一个增加。优点:不会浪费空间。缺点:效率低下。第二种方法:一次性直接增加一个大空间。优点:足够放下数据。缺点:浪费空间。那么,我们就得使用第三种
2024-12-26 23:01:45
314
原创 【C语言】结构体(四)
使用typedef关键字用一个单词Node代替structTreeNode,并定义指向该结构体类型的指针PtrToTreeNode将结构体的定义和typedef连在一起写,再次缩短代码到此,【C语言】结构体完结。(如果有新知识我会及时补充)
2024-12-03 21:56:48
670
2
原创 【C语言】结构体(三)
本篇为结构体指针专题(重点重点重点)结构体指针指的是指向结构体变量的指针!复制大型结构体可能会消耗大量的时间和内存资源,而传递指针只需要复制一个内存地址。使用指针来分配和释放堆上的内存,这在创建动态大小的数据结构时非常有用。在某些编程语言中,函数不能直接返回多个值。在这种情况下,可以通过返回一个结构体指针来间接返回多个值。 定义类型:struct 结构体名 * 结构体指针名(结构体名星结构体指针名)定义之后可以在上述定义的指针变量中存储结构变量的地址定义结构体指针举例: 定义结构体的同时定义结构体指针:通过
2024-12-03 16:05:59
598
2
原创 【C语言】结构体(二)
和其它类型变量一样,对结构体变量可以在定义时指定初始值二,结构体成员的访问1,访问手段:使用成员访问运算符(.)用一个点来访问2,访问手段的使用: . 结构体名 点 成员名三,结构体数组1,是什么?答:数组中的每一个元素都是结构体答:用来表示一个拥有相同数据结构的群体答:如图所示注:结构体数组在定义的同时也可以初始化当对数组中全部元素赋值时,也可以不给出数组长度练习题:计算全班学生的总成绩、平均成绩和140分一下的人数未完待续。。。
2024-12-02 23:53:30
555
2
原创 【C语言】结构体(一)
结构体就是一些值的集合,这些值称为成员变量。结构体的每个成员可以是不同类型的变量。说到集合,数组也是集合,但是不同的是数组只能是相同类型元素的集合。▶ struct是结构体关键字▶ tag是结构体的名字,是自定义的▶ struct tag就是结构体类型▶ { }里面放的是成员列表▶ variable-list是变量member1 , member2 是结构体成员结构体的基础结构:A.先定义结构体类型,再定义结构体变量B.定义结构体类型的同时定义结构体变量 C.直接定义结构体变量
2024-12-02 22:32:44
568
2
原创 【C语言】扫雷游戏(一)
我们先设计一个简单的9*9棋盘并有10个雷的扫雷游戏。1,可以用数组存放,如果有雷就用1表示,没雷就用0表示。2,排查(2,5)这个坐标时,我们访问周围的⼀圈8个位置黄色统计周围雷的个数是1。排查(8,6)这个坐标时,就会越界。只需要扩大一圈数组即可。
2024-12-01 22:15:12
3491
2
原创 【C++】缺省参数
第一个栈的数据量是80个,所以可以去手动初始化一个默认容量为100大小的栈;可是对于第二个栈,不知道数据量的大小,此时可以选择不传入实参,函数内部就会默认使用给出的缺省参数值4,那么这个栈的初始大小就为4。若是我们在提前知道当前数据量的情况下,可以手动给出栈的容量。一开始初始化给到的栈容量就不会太大或者太小,此时就可以使用到我们本文所学习的【缺省参数】了。a,函数声明时从右往左依次连续缺省。5,缺省参数的实际应用 —— 栈。b,函数调用传递实参时从左往右。b,必须函数声明给缺省值。
2024-12-01 22:14:20
295
原创 空间复杂度
注意:函数运⾏时所需要的栈空间(存储参数、局部变量、⼀些寄存器信息等)在编译期间已经确定好了,因此空间复杂度主要通过函数在运⾏时候显示申请的额外空间来确定。1,空间复杂度是对⼀个算法在运⾏过程中因为算法的需要额外临时开辟的空间。,并不是程序占⽤了多少bytes的空间的意思。3,空间复杂度计算规则也使⽤。2,空间复杂度算的是。
2024-10-20 23:03:57
281
原创 C语言总结五:操作符(压缩版)
算术操作符,移位操作符,位操作符,赋值操作符,单目操作符,关系操作符,逻辑操作符,条件操作符,逗号表达式,下标引用,函数调用,结构成员访问。
2024-05-07 23:10:27
335
原创 【C++基础】构造函数
概念:函数名与类名相同,且没有返回值类型,这就是构造函数,它承担着类初始化的工作。分类:默认构造函数、一般构造函数、拷贝构造函数、转换构造函数、移动构造函数。构造函数虽然名叫构造,但它并不是开空间创建对象,而是初始化对象。3,对象实例化时编译器自动调用对应的构造函数。1,函数名与类名相同。4,构造函数可以重载。
2024-05-06 22:00:27
373
原创 【C++基础】this指针
当我们在调用函数的时候,如果函数内部并不需要使用到this,也就是不需要通过this指向当前对象并对其进行操作时才可以为空,如果调用的函数需要指向当前对象,并进行操作,则会发生错误(空指针引用)就跟C中一样不能进行空指针的引用。count修饰this,this不能修改,this指向的内容可以修改。this指针又叫隐含的this指针。简单来说,用不到this,可以为空。用得到this,不可为空,因为不能进行空指针引用。this指针是个形参,形参是在函数的栈桢里,在函数的栈桢里面的变量是属于栈中的。
2024-05-06 12:35:22
367
原创 【C++基础】auto关键字和范围for循环
1,是什么:auto是一个提示符,提示编译器根据变量的值来推导变量的类型,作为一个新的类型指示符来指示编译器2,为什么:对于复杂的数据类型,可以交给编译器自己推导。3,怎么做:自动识别类型;和范围for来遍历数组;加引用与范围for一起修改数值;
2024-05-05 22:28:41
535
1
原创 【C++基础】内联函数
以inline修饰的函数叫做内联函数。编译时,C++编译器会在调用内联函数的地方展开,没有函数调用栈帧的开销。内联函数提升程序运行的效率。
2024-05-05 22:28:19
649
原创 【C++基础】缺省参数
缺省参数是声明或定义一个函数时为函数的参数指定一个缺省值。简单来说就是在定义函数的时候可以给形参赋一个初始化的值,这个值就叫做缺省值。例:int main()Func( );//没有传参时,使用参数的默认值Func(10);//传参时,使用指定的实参return 0;
2024-05-04 17:47:50
279
1
原创 【C++基础】命名空间
namespace+命名空间的名字+{ }manespace为命名空间的关键字,{ }里面为命名空间的成员。注:一个命名空间定义了一个新的作用域。
2024-05-04 09:41:59
398
原创 C语言总结二:分支与循环(压缩版)
continue:跳出本次循环后的代码,直接到调整部分。&&(并且),||(或者),!作用:在函数内跳转到设置好的标号处。break:跳出语句。break:终止循环。
2024-04-27 16:09:54
229
原创 【C语言】指针基础知识(二)
1,指针的类型决定了,对指针解引⽤的时候有多⼤的权限(⼀次能操作⼏个字节)。例如:char* 的指针解引⽤访问⼀个字节,int* 的指针解引⽤访问四个字节,short*的指针解引⽤访问两个字节。
2024-03-24 19:42:02
512
2
原创 【C语言】打印用*组成的X形图案
00,11,22,33,44=的位置有*,22,13的位置也有*。也就是说,i=j和i+j=4的位置有*。2,利用循环来打印出来。
2024-03-17 22:44:27
492
3
原创 【C语言】最大公约数
36/24=1...12 24/12=2...0 那么12就是36与24的最大公约数。给定两个数,求这两个数的最大公约数。例:36与24的最小公约数。
2024-03-16 19:33:39
262
2
原创 【C语言】打印素数
如果2~i-1之间有数字能整除i,则i不是素数,如果都不能整除,则i是素数。1,拿2~i-1之间的数字去试除i,需要产生2~i-1之间的数字。写一个代码:打印100~200之间的素数。只能被1和本⾝整除的数字。
2024-03-16 16:29:46
318
2
原创 【C语言】打印闰年
printf("是闰年\n");输⼊⼀个年份year,判断year是否是闰年。能被4整除并且不能被100整除是闰年。2,能被400整除是闰年。
2024-03-16 15:58:04
652
2
原创 【C语言】数9的个数
1,首先产生1~100的数字。然猴设法得到数9个数,例如个位:19%10=9,十位:91/10=9。编写程序数一下 1到 100 的所有整数中出现多少个数字9。2,每次得到数九的时候,就用一个变量来进行计数。
2024-03-16 14:10:17
668
1
原创 【C语言】分数求和
3,还没完,我们需要想办法把加号减号交互出现这种情况呈现出来。很简单,想一下,减去一个数就是加上一个数乘于负一。计算1/1-1/2+1/3-1/4+1/5 ……+ 1/99 - 1/100 的值,打印出结果。这是只需要一个变量来存放-1就行了,当遇到需要加的时候,这需要把1赋给这个变量就行了。原因很简单,分数的整型为0,所以求和之后的结果为1/1+0+0+...+0=1。1,首先简单理解,把整体的符号当成+。如果是-1,那就不是+和-交替出现了。注:-hgh不能直接写为-1。2——把1改为1.0。
2024-03-16 10:47:27
1336
1
原创 【C语言】求10个整数中最大值
2,用一个变量max存放最大值,再用每个值与max比较,如果比max值大的话就把这个赋值给max,最后再打印出max的值。printf("最大值为%d", max);1,首先用数组存放10个整数。
2024-03-15 22:44:59
732
2
原创 【C语言】九九乘法表
2d(使输出的int型的数值以2位的固定位宽输出)1,%d后加一个空格。2,确定该定义哪些变量(i,j)3,确定变量该如何取值(1~9)1,确定每一行何时结束。2,i与j交换位置。
2024-03-15 12:32:47
672
4
原创 【C语言】等边等腰三角形的判断
a)||)\\等腰三角形。else printf("是普通三角形");printf("是等边三角形");printf("是等腰三角形");else printf("不是三角形");if(a==b&&b==c)\\等边三角形。2,进一步判断是什么三角形。1,判断是否为三角形。
2024-03-15 11:53:10
935
2
原创 【C语言】将三个整数数按从大到小输出
4,同理可得,假如a小于c,那么我们就可以把它变为a大于c,这样一来,a就成了最大值。假如b小于c,那么我们就可以把它变为b大于c,这样一来,b就成了次大值,c就成了最小值。3,假如a小于b,那么先把a的值存放在tmp中,再把b的值赋给a,然后把tmp的值赋给b。这样子操作之后,就会发现,本来a是小于b的,现在变为a大于b了。1,我们要借助一个变量来完成此次代码。注意:这里的=是赋值符的意思,并不是数学上的等于。5,然后我们就可以依次从大到小打印出来了。2, 首先输入值,分别为a,b,c。
2024-03-15 01:35:35
650
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人