自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 深入理解指针(三)

下面我们来看一个指针加整数的例子:int main()int i = 0;for (i = 0;i < sz;我们可以看到p加上i,再对他们取地址,可以作为数组的下标,相减也同理。

2024-06-09 16:22:33 884

原创 深入理解指针(二)

指针变量的大小和类型无关,只要是指针变量,在同一个平台下,大小都是一样的,为什么还要有各种各样的指针类型呢?其实指针类型是有特殊意义的,我们接下来继续学习。return 0;这个代码会将n的4个字节全部改为0。return 0;但这个代码只是将n的第一个字节改为0。比如:char*类型的指针解引用就只能访问一个字节,而int*类型的指针解引用就能访问四个字节。

2024-05-25 16:39:45 833

原创 我的创作纪念日

创作已经成为了我生活中的一部分,在寒假期间,我基本上是两天一更,这不是一种负担,而是一种帮助我和大家学习的方法。当然,我精力有限,在开学这段时间并没有更新太多,但这并不影响,创作对我来说并不是一种负担。在生活中,我还是尽可能的以学习为主,闲暇时间也会来进行创作,顺便复习一下以前学习过的知识。在创作的过程中,每篇都会多多少少有些关注,阅读量,这些激励着我写下去,给了我正向的反馈。同时在发布过程中,我也再一次进行了相关内容的学习,这对我的帮助也是莫大的。前一段时间学习了单链表的增删查改以及贪吃蛇的实现。

2024-05-24 16:20:22 150

原创 深入理解指针(一)

在说内存和地址之前,在我们生活中有这么个例子:假如有一栋楼,楼上有很多个房间,如果你的朋友想来找你,就得挨个去找,这样效率很低,但如果我们知道房间号,就会很容易。上面的例子放到计算机中也一样。我们知道计算机上CPU(中央处理器)在处理数据的时候,需要的数据是在内存中读取的,处理后的数据也会放回内存中,那我们买电脑的时候,电脑上内存是8GB/16GB/32GB等,那这些内存空间如何高效的管理呢?其实也是把内存划分为一个个的内存单元,每个内存单元的大小取1个字节。

2024-04-27 22:16:58 837

原创 C语言操作符详解(三)

整型提升,算数转换,问题表达式

2024-04-11 21:40:03 511 1

原创 C语言操作符详解(二)

& 按位与| 按位或^ 按位异或~ 按位取反注意:它们的操作数必须是整数。下面的码我都只取了后八位使用补码进行按位与规则:对应二进制位有0就是0,两个同时为1才为1.使用补码进行按位或规则:对应二进制位有1就是1,两个同时为0才为0使用补码进行按位异或规则:相同为0,相异为1exp1,exp2,exp3,...expn逗号表达式,就是用逗号隔开的多个表达式,从左到右依次执行,整个表达式的结果是最后一个表达式的结果。3.2、函数调用()我们写完函数,用()进行调用。假如我们要描述一个学生,我

2024-04-05 20:44:25 571 1

原创 C语言操作符详解(一)

• 算术操作符: + 、- 、* 、/ 、%• 移位操作符:>• 位操作符: & | ^• 赋值操作符: = 、+= 、 -= 、 *= 、 /= 、%= 、= 、&= 、|= 、^=• 单⽬操作符:!、++、--、&、*、+、-、~ 、sizeof、(类型)• 关系操作符: > 、>= 、< 、

2024-03-04 22:19:14 1125 1

原创 C语言函数递归

递归实际上就是函数自己调用自己。递归在书写的时候,有2个必要条件:• 递归存在限制条件,当满足这个限制条件的时候,递归便不再继续。• 每次递归调用之后越来越接近这个限制条件。在下面的例子中,我们逐步体会这2个限制条件。

2024-02-26 22:37:12 522 1

原创 VS实用调试技巧

当我们发现程序中存在的问题的时候,那下一步就是找到问题,并修复问题。这个找问题的过程叫称为调试,英文叫debug(消灭bug)的意思。调试一个程序,首先是承认出现了问题,然后通过各种手段去定位问题的位置,可能是逐过程的调试,也可能是隔离和屏蔽代码的方式,找到问题所的位置,然后确定错误产生的原因,再修复代码,重新测试。

2024-02-24 22:14:56 968

原创 C语言函数(二)

一般我们在使⽤函数的时候,直接将函数写出来就使用了。比如:我们要写一个函数判断一年是否是闰年。return 1;上面是函数的定义这种场景下是函数的定义在函数调⽤之前,没啥问题。但如果将函数的定义放到后面会出现警告:这是因为C语言编译器对源代码进行编译的时候,从第一行往下扫描的,当遇到is_leap_year函数调用的时候,并没有发现前面有is_leap_year的定义,就报出了上述的警告。把怎么解决这个问题呢?

2024-02-22 22:14:03 1144 1

原创 C语言函数(一)

相比于库函数,自定义函数其实更加重要,它给程序员创造了更多的可能。函数的语法形式如下:ret_type fun_name(形式参数)ret_type:函数返回类型,可以使int、double等,也可以是void,代表无返回值。fun_name:是函数名,一般可以随意取。括号:里面放的是形式参数。{}:里面放的是函数体。我们可以把函数想象成一个工厂,材料经过工厂加工才可以变成产品。参数在函数内经过计算,也会返回出结果。举例:写一个两数相加的函数。

2024-02-20 20:27:07 939 1

原创 C语言数组(下)

二维数组的初始化与一维数组很像不完全初始化:完全初始化按照行初始化:二维数组初始化时能省略行,但不能省略列。

2024-02-18 20:28:24 497 1

原创 C语言数组(上)

1.数组是⼀组相同类型元素的集合。2.数组元素不能为0.3.数组中存放的多个数据,类型是相同的。

2024-02-16 20:02:11 791 1

原创 C语言猜数游戏(2)

除此之外,我们还要设置数的范围,一般来说我们的范围会定在1-100,那么就要写成rand%100+1。如果timer是NULL,就只返回这个时间的差值。time函数会返回1970年1月1日0时0分0秒到现在程序运行时间之间的差值,单位是秒。1、首先我们需要一个menu函数,来处理游戏的开始,判断玩家是否愿意玩下去。在程序中,我们一般使用时间来作为种子,因为它是一直在变化的。2、如果玩家输入1,则表示愿意玩,0则是退出。3、进入游戏后,我们将游戏写入game函数中。这样可以看出,运行的数字是随机的。

2024-02-15 17:46:19 604 1

原创 C语言猜数游戏(1)

掌握了前面的知识,我们可以写一个猜数游戏,让系统给出一个数,我们来猜。

2024-02-14 23:18:11 574 1

原创 打印100-200间的素数练习+goto语句

素数是只能被1和本身整除的数1.我们要有100-200之间的数,所以要用到循环。2.在上面的循环基础上,还要嵌套一层循环,来看看这个数是否只能被1和它本身整除。3.为了判断是否有其他数来整除这个数,我们设置一个数来判断,就是flag,一旦有别的数整除,他就变为1,否则就是0。

2024-02-13 19:05:00 508 1

原创 C语言for循环

for循环的格式如下:表达式1⽤于循环变量的初始化表达式2⽤于循环结束条件的判断表达式3用于`循环变量的调整下面我们用fo循环打印数字1-10。

2024-02-11 15:33:22 500 1

原创 C语言while,do while循环

while循环的基本格式是如果符合括号内的表达式,则进行循环,否则则不。

2024-02-09 14:10:02 487 1

原创 C语言关系,条件,逻辑操作符

C语⾔⽤于⽐较的表达式,称为“关系表达式”,⾥⾯使⽤的运算符就称为“关系运算符”,主要有下⾯6个。> ⼤于运算符< ⼩于运算符>= ⼤于等于运算符<= ⼩于等于运算符== 相等运算符!= 不相等运算符关系运算符中一般返回1或0表示真假,1为真,0为假注意:相等运算符==和运算符=是不一样的,==是判断两边的值是否相等,=是把右边的值赋给左边二、条件操作符先判断exp1,若exp1为真,则此表达式的值为exp2计算出的值;若exp1为假,则此表达式的值为exp3计算出的值。

2024-02-08 23:46:17 777

原创 C语言switch case语句

倘若表达式结果是2,则从case2开始执行,一直到default,如果想让它只执行case2,我们需要在每个语句结束后,加上break,如下。2. 每⼀个 case 语句中的代码执⾏完成后,需要加上 break ,才能跳出这个switch语句。注意:1.case 和后边的数字之间必须有空格。default是我们输入错误的数时所会执行的。switch case语句的大概结构如下。如果我们不加break,就会变成这样。输入数字1-7,来打印对应的星期。加上之后,才是我们想要的答案。下面我们来做一个小练习。

2024-02-07 16:01:42 554 1

原创 扫雷的设计及实现(2)

rand是一个1--32767的伪随机数,我们用9对它取余,它的结果是0--8,因此+1是1--9,我们的坐标也是1--9,当随机数的位置是‘0’时,代表这个地方没有雷,我们可以布置雷,因此让这个位置变为‘1’。由ASCII码我们可知,‘1’与‘0’之间相差1,‘2’与‘0’之间相差2,我们要将字符转变为数字,因此每个都要减去‘0’,一共八个。此时我们要布置雷了,因为是简单版的扫雷,所以我们布置10个雷。我们将‘1’作为雷,‘0’是没有雷,‘*’是玩家开始游戏时,所看到的,其是未知的。

2024-02-01 12:50:15 435 2

原创 扫雷的设计及实现(1)

我们写的是9x9的,所以定位9,若果想写更大的,直接在这里面改就会很方便。因为要标上坐标,上下左右都会多出来一行,因此还要有11x11,所以下面加2。srand((unsigned)time(NULL))是用来随机布雷的,以确保每次的雷位置不同。游戏目标是在最短的时间内根据点击格子出现的数字找出所有非雷格子,同时避免踩雷,踩到一个雷即全盘皆输。玩家需要找出所有的类,上面的数字代表以此方块为中心的3x3方块中雷的个数。game.h:游戏相关的函数的声明。game.c:游戏相关的函数的实现。

2024-01-31 14:22:12 472

原创 C语言if else语句

我们可以使⽤ if 、 switch 实现分⽀结构,使⽤ for 、 while 、 do while 实现循环结构。如果输入一个数是奇数的话,则输出“奇数”二字,否则输出“偶数”二字。表达式为真,则语句执行;

2024-01-24 14:31:15 351 1

原创 第一天写博客

其次,要有一个目标,相信大家在大一都写过职业生涯规划书,有很清楚的目标,而我的目标是进入百度,米哈游这样的大厂,相信很多人与我的目标相同,既然这样,我们就要付出相应的努力,如果有和我目标相同的,那我们可以一起努力。今天是我第一次写博客,我是小王,今年大一,正在学习编程。提起编程,与其相关的竞赛可能就是蓝桥杯,ACM等竞赛,能通过自己的努力,在这些大赛中取得好的成绩。最后,这是我第一次写博客,我希望无论如何,这个行为我能坚持下去,也希望大家来监督我。首先,每周至少要学习12h,并且还要每天练习。

2024-01-16 23:54:30 286 1

空空如也

空空如也

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

TA关注的人

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