自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 学习札记:数据存储

我们听前辈讲过,计算机只认识0和1;换句话说,计算机是只认“二进制”的。

2023-10-04 11:02:49 46 1

原创 学习札记:字符串函数与自己实现的字符串函数

这样就把str2的一个元素赋给了str1,重复此过程直到str2找到了’\0’,此时,‘\0’也被赋给了str1,两字符串看到了’\0’就结束了,把str2复制(赋值?另外,由于两个同类型指针相减所得是指针间元素个数,所以另一个思路是:共产生两个指针均指向首元素,另一个指针不动,另一个指针向后遍历字符串直到结束,计算两指针的差,就是元素个数即字符串长度。如果跳过的过程中,有一个字符串已经结束而另一个字符串尚未结束,那二者肯定不相同,反回未结束字符串当前指针指向的元素与’\0’的ASCII码的差。

2023-09-09 14:28:28 59 1

原创 学习札记:qsort函数

那cmp函数的本意就被破坏掉了,因此,我们换一种返回法,只要大于0统统输出1,只要小于0统统输出-1,这样就规避了类型转换丢失数据的问题,也符合cmp函数的要求。如果我们规定升序,即越小越往前排,那么e1指向e2左边就说明e1指向的值应该小于e2指向的值,也就是说符合升序的要求。此时要求cmp<0,那我们很容易想到现在e1所指向的值-e2所指向的值<0,用它做返回值再合适不过了。所以,为了获取我们需要的整型的数据,应该将(void*) 强制转换成(int *),然后解引用操作后,返回两个整数的差。

2023-08-15 10:55:15 60 1

原创 学习札记:判断左右旋

在此选用左旋,每次左旋1位,旋转上限是strlen(str1)次(当然strlen(str2)次也一样,因为我们已经确保了两字符串长度相等);其实也可以自己实现这个功能,只要比较每一位的ASCII码是否相同就可以比较字符串是否相同了。所以,是否可以把其中一个字符串重复一遍,将第二个字符串与新的大字符串比较,若在大字符串内检出了第二段字符串,就说明可以自旋得到呢?字符串左右旋,实际上就是左移右移k个字符,将移除的字符接到相反位置的行为。因此,首先,至少要实现的功能是:比较两个字符串是否相同。

2023-08-11 12:34:06 48 2

原创 学习札记:递归

输入x,比如x=5,此时5>1,那么返回pong(4)×5,此时x=4,pong(4)的值实际为pong(3)×4,如此往复,pong(3)=pong(2)×3,pong(2)=pong(1)×2,pong(1)0=1,就得到了:pong(5)=5×4×3×2×1=120.而在x>2时,fib(x)=fib(x-1)+fib(x-2),此时直接输出这一式即可。比如:斐波那切数列,Fib(n)=Fib(n-1)+Fib(n-2),属于自身调用。故,rabbit(5)=2+1+2=1+1+1+2=5.

2023-08-02 20:15:44 49

原创 学习随笔:字符统计

如果把’a’和’z’改成97与122, 程序也能正常运行,这是因为’a’对应的ASCII码是为97,‘z’对应的ASCII码是122.之后的情况同理,依次排查了大写字母、字符数字、空格(或写成str[i]==32,因为’ '的ASCII码即为32.)由于cpp的函数只有一个返回值,不能同时返回四个指标,因此,考虑将四个指标都创建为全局变量,使之可以在函数体外被调用,这样利用函数体储存的数据就可以保存下来了。函数体内,首先先用strlen计算字符串的长度,便于在循环统计体内部确定统计范围。

2023-08-02 19:44:10 40

原创 学习随笔:扫雷

对此,我们不妨思考:若使用整数初始化,那么用于游戏的棋盘就会被许多相同的数字覆盖,这样不仅费眼,更容易与雷数信息混淆,因此,倒不如用一些字符来代替数字。有必要指出,由于排查格子后要计算周围八个格子的雷数,但如果只给一个9×9的棋盘,那边上一圈周围的格子数只会是3或5个,剩余的排查就跑到界外了。故为了获取雷数,只需要将正在排查的格子的周围八个格子的字符数字相加,将所有字符数字都减去 ‘0’ ,就能得到int类型的数据。当win达到上限时,意味着没有可以再选的空格子了,所有的雷都已被排除,此时游戏胜利。

2023-07-31 14:18:11 95 1

原创 学习随笔:互质数

小学数学告诉我们,5元数组做两两判断,最后会有十次判断结果。所以,先固定一个i作为两个预判断数据内的一个固定者,再从其后面的那个数开始循环判断。在函数体内重复运用函数本身,使其自动做相同的工作。结果为3.这也符合我们的预期:只有{514,19},{19,198},{19,10}三对互质数。因此,只要将这一套算法包装成函数,就可以实现对两个数最大公因数的判断了。互质,也就是两个整数的最大公因数为1.例如,7与5互质,4和6不互质。最后,输出计数器的值,即是总共的互质对数量。首先,互质是什么概念?

2023-07-31 12:56:42 91

原创 小白写素数时的突发奇想

由于学过c++但掌握并不是很牢固,导致一些基本语法,如对bool的运用不是很清楚。在作业里有一道判断素数的编程题,是我之前学习c++时也遇到过的,在今天的学习和编程过程中,我想到了对过去一些掌握不牢靠知识的应用。这里我用了二维数组,并根据老师的指导简化了循环次数,降低了循环条件,增加了运算效率。至于为什么用二维数组做指示器,我的回答是我不会用bool之类的做判断(悲)

2023-07-24 16:11:08 30

原创 挂科生想说

虽然进了一个不错的大学,但是面对卷王,我迅速败下阵来,至少在大一上学完的cpp编程方面,我以挂科和没学到什么东西作为了这一门课的结果。大二重修在即,大一的老师几乎没有教给我任何东西,而大二的工作量又重如泰山,因此趁着这个宝贵的暑假,我参与了c语言培训班,并希望在c语言的基础上,掌握cpp的基础知识。因此,在下面三个月,我认为跟着这个培训班,我至少要弄明白进阶算法部分,而cpp特有的面向对象的编程,我也要在学校重修课上争取弄得完全明白。写此小段,与诸君共勉。

2023-07-20 15:33:59 56

空空如也

空空如也

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

TA关注的人

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