自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(14)
  • 收藏
  • 关注

原创 C语言面试题-两个递增递减数组合并且排序

假设有两个整形数组A和B,A是有序递增,B是有序递减,假如A有足够 空间合并B,要求不使用额外空间,把B合并到A,并重新排序有序递增,用C语言,函数模板为void merge(int a[],jnt b[],int n,int m)由于B数组是递减有序的,我们从B数组的末尾开始复制,这样复制到A数组末尾的元素也是递增的。复制完成后,整个A数组的元素顺序可能被打乱,因此我们需要对整个A数组进行排序。在实际应用中,如果数组很大,你可能需要使用更高效的排序算法,如快速排序、归并排序等。

2024-07-02 21:43:56 92

原创 C语言面试题-求输入字符串中的连续数字组成的最大数字

接下来就是判断,如果指针移位的时候没有检测到数字,说明上一个连续的数字已经检测完毕,把当前数字cur传入到max中,完成最大值的返回。最后,当字符串遍历到最后一位的时候,也要进行cur和max的判断,防止字符串的最后出现新的max。能够完成字符串转数字并且实现了字符串转数字的移位操作,每次都要cur*10完成移位。在这段代码中,首先要用到字符串转数字的操作。

2024-07-02 21:11:43 87

原创 C++ Thread线程库的基本使用

当一个线程创建完成,我们可能需要等待他完成,以便线程的执行结果完成或执行清理操作,我们可以使用t.join()方法来 等待线程完成。在这段代码中,如果我们不使用join函数等待线程完成,那么可能在线程未执行完成时,主函数就已经结束了,会出现以下的报错。如果正确使用了join操作,则会等待线程完成,输出正确的结果。

2024-06-28 17:31:25 958

原创 C语言练习-求最大公约数和最小公倍数

在求最大公约数和最小公倍数,我们先输入两个值,求出其中的较大值和较小值,并用i和j分别来进行接受,并且使用while循环,当n和m都能整除较小值的时候,跳出循环,不行的话就较小值一直--,直到整除为止。同理,求最小公倍数也是一样的道理。但是这个算法存在缺点, 那就是运行效率不够高,因此,我们提出一种新的方式,叫辗转相除法。

2024-04-15 11:32:36 329 1

原创 C语言-使用函数指针 和 函数指针数组实现 计算器功能

在这里,calc函数的参数是一个函数指针,返回类型是int,函数参数则是int,int,用于接受我们的计算函数,把函数的地址直接传入calc,使用calc的接受值来进行计算,可以减少冗杂重复的代码编写,实现程序的简洁化m3bro。在学习了指针进阶后,对各种指针如(数组指针、指针数组、函数指针等)有了更深刻的理解和印象,有了函数指针,对于我们在工程中的应用来说,可以帮我们省去冗杂的代码,提高代码的可阅读性,下面我们来看看是如何利用函数指针实现这个小计算机。重点说一下calc函数,使用到了函数指针。

2024-04-05 15:35:59 240 1

原创 练习-两个升序数组合并

接着我们定义两个数组指针,用于在两个数组中遍历,取两个数组指针的值较大者,我们直接进行输出,并且指针也要相应移位。最后,如果当其中一个数组遍历完成,指针无法再向下增加,就把没有遍历完的数组直接输出,得到新的合并数组。首先,我们先定义两个数组,并用scanf来定义输入数组的长度,使用两个简单的for循环来进行。

2024-04-02 16:02:21 223 1

原创 C语言指针笔记

答:*p++是先取p的值,即先进行*p的操作,后再进行p++,即对p这个指针变量进行递增。(*p)++则是先取指针p所指向的值,然后对这个值进行递增操作。两者的相同点在于都是先取出p的值,但*p++是对p指针变量的地址地址,而(*p)++则是对值进行递增。

2024-04-02 15:50:23 236 1

原创 C语言练习-三子棋

三子棋主要是在学习C语言中,运用到数组和函数及各种循环嵌套的综合小项目,跟着B站老师的学习,在复盘过程中还是会发现一些很巧妙的点,可以运用到以后的编程项目上,由此把他记录下来,也是为了能够复习和更好地理解这个小项目。

2024-03-14 17:42:48 845 1

原创 C语言函数练习-递归函数

当使用递归方法时,函数运行结束时,返回指针自身的值并+1(str+1),这样函数每执行一次,指针也同时移位一次,实现统计计算。,如果是str的话,只能返回数值+1,指针并不能向前移位,因此不能得到正确的值,这是很容易犯错的一个点,需要加以注意。创建临时变量count,当指针找不到'\0'时,count++统计次数,指针也同时向下移位,实现统计。自己定义一个函数,实现求字符串长度的功能,不能创建临时变量,采用递归的方法运行。每次返回my_strlen的时候,里面的形参必须为(str+1)

2024-03-09 17:39:12 205 1

原创 函数练习-写一个函数调用自增函数

/此时地址p对应已经+1;

2024-03-05 22:17:58 180 1

原创 函数练习-二分查询

先定义一个名为binary_search()的函数,定义好left、right、mid等变量,注意,判断条件是while(left

2024-03-05 19:47:02 307

原创 C语言函数-传值和传址

当Swap函数完成了之后,可以发现A和B并没有发生变化,而px和py的值发生了改变,说明Swap函数只交换了形参,而实参并没有变化。可以观察到,我们的a和b的值在运行到Swap函数语句的时候,值发生改变,相对应的地址也产生了改变,因此我们的传址就正确完成了!这是一个很容易混淆的点,我们很容易理所当然地就使用传值的方式,这样很容易忽略到一些点导致工程的错误。在调试的时候,我设置a=200,b=100,单步运行语句,我们来查看一下a和b的变化。并且我们进入调试,查看a和b的值和地址是否发生改变。

2024-03-05 17:50:44 198

原创 GCC编译器及使用

GCC汇编分为4个阶段,预处理、编译、汇编和连接。比如我们有一个test.c文件,结果输出为Hello,World。

2024-01-30 15:07:43 218 1

原创 Linux系统基本操作

Linux只有一个树形结构,只有一个根目录“/”,所有文件都在他下面。

2024-01-28 19:55:13 623 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除