自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 第一次参加蓝桥杯的经过即感受

这篇文章是一位大学生分享参加蓝桥杯编程比赛的真实经历。作者详细描述了从报名、赛前准备到比赛当天的全过程,包括报名流程(填表、缴费)、考前准备(准考证下载、环境测试)、比赛实况(签到、电脑检测问题)以及解题过程(使用WPS看题、devc++写代码)。特别提到因准备不足只获得省二等奖的遗憾,并提醒读者要提前熟悉编译器、认真备赛。文章以幽默自嘲的口吻结尾,表示明年会再战,同时祝愿其他参赛者取得好成绩。全文语言生动,为准备参加蓝桥杯的学生提供了实用参考。

2026-04-29 13:45:39 526

原创 学徒笔记18-预处理详解

本文介绍了C语言预处理的相关知识,主要包括:1.预定义符号的使用;2.#define定义常量和宏的语法规则及注意事项;3.带有副作用的宏参数;4.宏函数与普通函数的优缺点对比;5.#和##运算符的作用;6.#undef移除宏定义;7.命令行定义符号;8.头文件包含的两种方式及重复包含问题;9.条件编译的使用方法及其防止头文件重复包含的作用。文章通过具体示例详细说明了预处理指令的使用技巧和注意事项,为C语言预处理阶段的理解和应用提供了实用指导。

2026-01-01 22:26:28 552

原创 学徒笔记17-动态内存管理以及柔性数组

本文介绍了动态内存管理的关键概念。动态内存分配允许程序在运行时按需分配内存,主要通过malloc、calloc、realloc和free四个函数实现。malloc分配未初始化内存,calloc分配并初始化为0,realloc调整已分配内存大小,free释放内存避免泄漏。文章还探讨了柔性数组的特性,它是结构体末尾的未指定大小数组,需配合动态内存使用。相比指针方式,柔性数组能简化内存管理、减少碎片和提高访问效率。正确使用动态内存需遵循谁申请谁释放原则,并注意避免重复释放和内存泄漏问题。

2025-11-20 22:13:25 745

原创 学徒笔记16-浮点型数据在内存中的存储以及浮点数的二进制表示形式

摘要:本文介绍了浮点数在计算机中的二进制存储方式。根据IEEE标准,浮点数表示为(-1)^S × M × 2^E,其中S为符号位,M为有效数字(1≤M<2),E为指数。存储时,M只保存小数点后部分(首位默认为1),E需加上中间数(127或1023)以避免负数。E分三种情况:正常值(需减中间数)、全0(表示±0或极小数)、全1(表示±无穷大)。由于二进制限制,浮点数可能存在精度误差,建议比较时设置合理误差范围。

2025-11-13 21:27:32 539

原创 模拟笔记2-strcpy与strcat函数的模拟实现

本文介绍了如何模拟实现C语言中的字符串拷贝函数strcpy和拼接函数strcat。通过指针操作,首先实现strcpy函数,通过移动指针将源字符串内容逐个拷贝到目标字符串。文章展示了三种不同情况的测试结果,并提醒注意数组容量限制,建议可优化为strncpy实现。接着介绍了strcat函数的模拟实现,先定位目标字符串末尾,再执行字符串拷贝操作完成拼接。最后展示了测试结果,并说明可通过类似方法实现strncat函数。文章采用代码片段和图示相结合的方式说明实现过程。

2025-10-27 08:15:00 351

原创 模拟笔记1-三种方法模拟实现库函数strlen的功能

本文介绍了三种模拟实现C语言库函数strlen的方法。1)计数器法:通过指针遍历字符串直到'\0',用计数器统计长度;2)递归法:通过递归调用逐字符检查,遇到'\0'时回溯累加;3)指针相减法:记录首尾指针位置,相减得到元素个数。三种方法均基于'\0'终止符原理,测试结果正确。作者指出虽然返回值应为size_t类型,但用int类型模拟亦可实现相同功能。

2025-10-26 19:55:42 500

原创 学徒笔记15-原码、反码、补码以及位操作符

<:左移操作符(可以看成箭头方便区分左右),左移操作符不分逻辑和算术两类,它会将二进制整体向左移动(比如1<<2,表示1的二进制向左移动两位,结果是4),空缺出来的部分补0,也就是左边移出去的一位舍去,右边空出的补0,会改变符号位。& 按位与操作符:a&b,及a和b二进制一一对应,二进制每一位中两者均为1则该位为1,若有a,b其中只要有一个在该位为0,则这一位为0,即有0则0,全1则1。^ 按位异或:同上类似,不过相同为0.相异为1(也就是两者在该位都为1或0则为0,在该位一个为1另一个为0则为1)

2025-09-26 22:33:15 383

原创 学徒笔记14-初学阶段常见代码错误以及如何找出代码错误(调试技巧)

编程初学者常见错误类型及调试技巧:代码错误分为三种类型:1.编译型错误(语法错误),如漏分号、scanf未加&等;2.链接型错误,如标识符未定义、拼写错误等;3.运行错误,如=与==混淆、变量未重置等。调试是解决问题的关键,需掌握调试快捷键(F10、F11、F9)和监视功能,通过断点定位问题。建议使用debug版本进行调试,培养独立解决问题的能力。

2025-09-20 13:21:22 973 2

原创 学徒笔记13-自定义函数的相关概念(函数原型、形参实参、return语句、传递数组的注意事项、嵌套调用和链式访问以及高内聚低耦合、多文件的应用)

实际上,如果只是定义了一个函数,而不去调用它的话,我们的自定义函数的参数只是形式上存在的,不会向内存申请空间,不会真实存在,所以叫形式参数。这里最上面一行就是函数的声明,如果不先写函数的声明程序就会报错,也可以把函数的定义直接写在最上面(函数定义是特殊的声明),也就是我们最常用的方法。这里可以第一次打印的是52空格,也就是3个字符,返回值为3,第二次打印3空格,也就是2个字符,返回值为2,所以最好打印2。3.return返回的值与函数的返回类型不一致,系统会自动将返回的值隐式转化为函数的返回类型。

2025-09-13 11:50:58 490 2

原创 学徒笔记12-sleep函数和system函数

sleep函数的原型是sleep(参数),单位是毫秒,比如sleep(1000)也就是程序执行时会休眠1秒再继续执行,使用时需要包含头文件windows.h。再说说system函数,原型是system(“指令”),使用时需要包含头文件stdlib.h,它的作用是执行系统命令。以cls为例,程序执行system(“cls”)时会清理已经打印在屏幕的信息。更多指令感兴趣可以自己去了解。比如dir是列出目录信息。

2025-09-09 20:03:35 127

原创 学徒笔记11-什么是变长数组?sizeof如何计算数组?数组的概念、用法、注意事项以及变长数组

一维数组,二维数组,变长数组相关知识点以及注意事项,还有数组中的逗号表达式

2025-09-09 19:53:52 316

原创 学徒笔记10-如何创造随机数?什么是时间戳?初学阶段应掌握的srand、rand以及time函数相关知识

程序在调用rand函数之前会先调用srand函数,通过srand函数的参数seed(种子)来生设置rand函数生成随机数的时候的种子,但特别注意,这不代表有多少rand()就要调用多少次srand函数,实际上无论使用多少次rand(),执行一次程序只会调用一次srand函数,所以srand函数并不需要频繁调用。,其默认种子是1,所以若你只使用rand函数你会发现你显示的数值虽然看上去是随机数,但每次显示的随机数都是一样的,这就叫 “这里我们看到,对于不同种子1和2,两次rand()表示的数是不一样的。

2025-09-06 01:52:35 382

原创 学徒笔记9-关于操作符(含短路现象)以及单目操作符、双目操作符、三目操作符的区分以及strcmp函数的基础知识

初学阶段常见的操作符以及如何判断是几目操作符

2025-09-03 20:01:58 319

原创 学徒笔记8-如何输入汉字?关于初学阶段应该掌握的占位符(包括%zd)以及关于占位符前面数字的作用

关于占位符其实还有很多,比如无符号整型对应的%u,long int类型对应的%ld(其他long类型规则类似就是在前面加l,long long类型则是在前面加ll),不过初学阶段我认为要掌握的就是我介绍的几种,其他占位符若是有兴趣可以自己查询,也欢迎在评论区分享你学过的占位符。%c 目标对象是字符,这里注意%c执行时不跳过空白字符,比如打印字符a,而你输入的是空格a,则输出结果为空值,若想跳过空白字符则需要在%c前面手动加空格。如果想要向左对齐则在前面加-,如图。%d 目标对象是整形,也就是整数。

2025-09-01 23:20:52 513

原创 学徒笔记7-初学阶段对scanf的了解、scanf为什么不安全以及解决方法

再来说一说scanf的返回值,scanf的返回值就是其读取的个数,比如你scanf中有三个占位符,若你给每一个占位符都输入值,则scanf的返回值就是3. 但是这不代表有几个占位符返回值就是几,如果你在输入其中一个占位符时按ctrl+z,在按回车键,程序将结束,比如我在第三个占位符中按,则scanf返回值为2。1.将scanf替换为scanf_s,但这一方法有一个局限,那就是只有vs里面能用,因为scanf函数是c语言中的库函数,而scanf_s则是vs里面独有的一个函数,所以不建议使用。

2025-09-01 22:12:55 609

原创 学徒笔记6-c语言的三种结构和五种语句

控制语句:c语言有九种控制语句,大体分为三类-----条件判断语句(分支语句)、循环执行语句、转向语句。表达式语句:一个表达式+;复合语句:大括号内的所有语句看作一个语句,就是复合语句,比如{…接下来再介绍c语言的五种语句,分别是空语句、表达式语句、函数调用语句、复合语句。转向语句:break语句、goto语句、continue语句、return语句。函数调用语句:我们使用printf,scanf等函数都叫函数调用语句,如图。循环执行语句:do while语句、while语句、for语句。

2025-08-30 17:51:12 159

原创 学徒笔记5-怎么打印特殊符号?printf打印出现乱码?关于\0等转义字符以及strlen等函数初学阶段介绍

常见的转义字符是\n和\0,其中\n是换行符,而\0是每一个字符串后自带的,是字符串的结束标志,printf和strlen等函数都是通过识别\0来确定字符串在哪里结束,我们也可以人工输入\0干涉printf和strlen等函数的执行(平时打印出乱码可能是因为没有识别到\0)。\xdd 16进制 这里d表示0~15数字,只有两位的理由同上,注意事项也同上,额外须知是这里x不是数字,可以理解成一种形式,\x 数字 数字。转义字符还有一种常见形式用法,比如我们想打印‘ ,”,\等特殊符号时,我们需要在前面加上。

2025-08-30 16:49:24 435

原创 学徒笔记4-下载gitee相关工具时名称和邮箱填错了解决方法

名字和邮箱填错了的补救方法

2025-08-28 23:32:31 166

原创 学徒笔记3-无法打开文件进行写入问题解决方法

这个问题的原因也可能是你的文件卡后台了,你可以进入任务管理器然后搜索test_4.exe(这是我的文件名,每个人命名的不一样),然后手动停止它,这样问题就解决了。其实还有一种方法是我最开始用的,也就是重启电脑,不过还是推荐大家明晓问题的本质学会更高效的方法,若是还有其他方法希望评论区留言分享。你可以尝试重新生成解决方案。选择vs2022上方的生成中的重新生成解决方案,然后再执行,若是仍然不行,尝试方法2。这是我学习过程中遇到的第一个问题,而我通过询问他人找到了两个解决方法。

2025-08-28 22:34:11 428 1

原创 学徒笔记2-快捷键

f11 可以进入函数中一步一步执行(函数整体算一个语句,若使用f10将直接使用函数进入下一个语句)【等学到自定义函数时会使用到,刚学不用记】ctrl +v 粘贴(shift +insert键也是粘贴,insert键在全键盘中右边7的上面INS)ctrl +z 取消上一指令,比如你不小心把你的代码撤回了,可以用这一快捷键恢复。ctrl +t 进入代码搜索界面,如果你代码太长了你找不到某一部分的时候可以使用。ctrl +k和c 注释代码,也就是你看得见但电脑不会执行被注释的代码。ctrl +c 复制。

2025-08-28 19:31:00 317 4

原创 学徒笔记1-关于对c语言的初步认识

学习c语言第一天对c语言概念的了解

2025-08-28 18:23:09 102 2

原创 学徒笔记(序章)

这是笔记的序章,作为一个对编程感兴趣但没有基础的大一学生,此后我将会以一个自学者加上初学者的视角记录我学习编程路上的一些想法和问题,希望能对其他初学者有所帮助和借鉴。

2025-08-28 18:02:24 166

空空如也

空空如也

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

TA关注的人

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