回顾2023,我的编程学习之旅

文章目录

  • 前言
  • 我与C语言
    • 初识C语言
    • 简易扫雷游戏
    • 二进制的美妙
    • 神奇的指针
    • 强大的结构体
    • 灵活的动态内存管理
    • 总结
  • 我与竞赛
  • 我与CSDN
  • 结语

前言

6月8号高考结束了,虽然还没有出分,但是也大致规划好自己想学什么专业了,没错就是计算机,出分后,我成功的进了梦寐以求的计算机专业。在假期,我通过b站认识了鹏哥,指引了我学习的方向,踏上了我的编程学习之旅。
把这篇博客我将分享我与C语言,竞赛,csdn的故事

我与C语言

初识C语言

在第一次看了鹏哥的视频后,我下载了vs编译器,写下了我人生中的第一段代码,便正式开始了系统的学习。
首先先学习了C语言如何输入输出,然后学习了C语言的三种结构,顺序结构,选择结构,循环结构,于是我写下了我的第一篇正式博客 :选择与循环语句(C语言) 这也成了我与csdn的第一次邂逅。
刚入学的我开始做学校的oj题,因为没怎么做过题,效率不是很高,甚至有时一道题能考一俩小时,但是我还是坚持了下去,进步很明显,面对这些简单的基础题已经不会再让我感到头疼,我也启蒙了我的计算机思维,正当我以为我已经天下无敌的时候,我参加了学校组织的第一场新生周赛,u1s1输的蛮难看的,这也让我意识到了我的不足之处,开始更加努力的学习编程。

简易扫雷游戏

在学习过函数和数组的相关知识后,我根据鹏哥的提供的思路,写出了自己的第一款小游戏(虽然非常简陋就是了)“扫雷”,通过自己的研究,让画面变得更加流畅,还添加了奖励机制,和最高记录功能,于是我就把扫雷写成博客,分享自己的思路,使用二维数组和函数实现扫雷游戏当时的我带着全宿舍试玩很久,欣喜的同时也更加坚定了我想要学好编程的决心。

二进制的美妙

很快我学习了二进制的原码,反码,补码,在这些的基础上学习了位操作符,并研究了整数和浮点数在计算机中的储存方式,让我对二进制有了更深的了解,虽然相较于我们平日里使用的十进制来说,二进制显得有点抽象,但是二进制数的美妙之处在于它简单、高效、可靠、可移植性强等。这些优点使得二进制数在计算机科学和信息技术领域得到了广泛的应用。学习了这些之后,我对计算机有了更深一步的了解。同时我也写了相关的博客来分享并记录自己的学习。
整数与浮点数在内存中的存储方式
位操作符

神奇的指针

随后我就学习了指针的知识,指针是C语言中一种非常重要的数据类型,它保存了一个变量的内存地址。通过使用指针,我们可以直接访问和修改变量的值,而不是通过变量名来操作。鹏哥的指针讲的十分的细致(鹏哥yyds),指针的灵活性使得其在C语言中广泛应用于各种场景,非常的重要,所以我在自认为理解的不错的情况下,写了有关指针的博客,想分享一下自己的知识,希望能够帮助想要学习指针的小伙伴,因为内容较多,总共分成了三期:
第一期
第二期
第三期

强大的结构体

学习结构体让我眼前一亮,因为你可以根据需要在结构体中定义任何类型和数量的成员,从而使它非常适合于表示现实世界中的复杂对象。比如描绘一个学生,我们可以把这个学生的名字,年龄,性别等全部包含在一个结构体里,结构体的复杂的内存对齐,自引用,位段等知识也被我我斩于马下,然后我也写了有关结构体的博客,分成了两期:
第一期
第二期

灵活的动态内存管理

为什么说动态内存管理十分的灵活呢?动态内存管理允许我们在运行时根据需要分配和释放内存,这使得程序更加灵活,能够处理各种不同的情况和需求。通过使用动态内存管理,我们可以在程序运行时动态地创建和删除数据结构,从而实现对数据的灵活控制和处理。这种灵活性使得C语言在编写各种不同的程序时具有很大的优势。虽然知识点相较于指针没有那么多,但也十分的重要,我在学习时也常犯一些错误,于是就总结起来,并写成博客分享:
动态内存管理

总结

回首这段C语言的学习之旅,我深感自己收获颇丰。从最初的迷茫和困惑,到现在的理解和掌握,每一步都充满了挑战和成长。C语言不仅教会了我编程的技巧,更让我明白了坚持和努力的意义。我相信,在不断的实践和学习会使我更加出色!

我与竞赛

其实吧,在学习编程之前就听说过算法竞赛,一直也是非常的向往,所以也积极的参加自己学校和隔壁学校的新生赛,不得不说,题真不是很好做,经常花一个小时也不一定能出来一道,赛后还要对没做出来的题目进行补题,因为有许多算法题,比赛时没见过做不出来,但也因祸得福,通过题解或者csdn查阅学会了这些算法只是,虽然这条路充满着坚信,但是一定是值得的,每进行一场比赛,就会学习到许多的新东西,让我一次打得比一次好。我报名了蓝桥杯,以国奖为目标,今后会不断的训练学习!

我与CSDN

正如我前面所说,我平时写博客是想和大家分享知识,可是在我刚注册csdn账号写下自己的博客后,我发现很少人会点击我的博客,让我感到失落,甚至产生了有点想放弃写博客的念头,但是很喜欢一句话“只要不断前进,道路就会不断延伸”,所以我做好自己不断前进(持续创作),随着时间的推移,我的粉丝越来越多,现在我的粉丝已经达到了一千,虽然也不多,但是我还是非常的自豪,所以今后我还将继续创作,分享知识,让我们利用好csdn这个平台,不断学习,一起进步!

结语

回首2023年,我感到无比庆幸和自豪。我要感谢所有支持我、陪伴我走过这段旅程的人。是你们的鼓励和帮助让我更加坚定地走下去。让我们一起携手,共同书写编程学习的美好篇章!
在这里我祝愿大家2024新年快乐,愿大家在学习的道路上越走越远,实现自己的梦想和目标。

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/588687.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

PyTorch中常用的工具(4)Visdom

文章目录 前言3.2 Visdom 前言 在训练神经网络的过程中需要用到很多的工具,最重要的是数据处理、可视化和GPU加速。本章主要介绍PyTorch在这些方面常用的工具模块,合理使用这些工具可以极大地提高编程效率。 由于内容较多,本文分成了五篇文…

影视后期: PR调色处理,调色工具面板介绍

写在前面 整理一些影视后期的相关笔记博文为 Pr 调色处理,涉及调色工具面板简单认知包括 lumetri 颜色和范围面板理解不足小伙伴帮忙指正 元旦快乐哦 _ 名词解释 饱和度 是指色彩的鲜艳程度,也被称为色彩的纯度。具体来说,它表示色相中灰色…

从马尔可夫奖励过程到马尔可夫决策到强化学习【01/2】

一、说明 关于马尔可夫过程,如何将马尔可夫决策转化成决策依据,这里介绍的基本的思想路径,为读者将来设计和应用决策模型提供理论上的参考。 这是了解强化学习的一系列基础文章的后续文章。如果您有兴趣了解强化学习,请查看此处。…

huggingface的tokenizer解读

文章目录 前言一、huggingface的tokenizer含义1、含义2、整体概括 二、加载lmsys/vicuna-7b-v1.5模型的tokenizer三、调用tokernizer方法四、字符串的tokens应用1、tokenizer应用2、tokenizer进行token分词(tokenizer.tokenize)3、tokens转模型识别ids(tokenizer.convert_token…

STM32F407-14.3.10-表73具有有断路功能的互补通道OCx和OCxN的输出控制位-00x10

如上表所示,MOE0,OSSI0,CCxE1,CCxNE0时,OCx与OCxN的输出状态取决于GPIO端口上下拉状态。 ---------------------------------------------------------------------------------------------------------------------…

Python 中的运算符介绍(1)

算数运算符 常见的% 、//、/ 用法 赋值运算符 赋值运算:将等号右边赋值给等号左边 常见场景: 比较运算符 代码解析: 逻辑运算符 位运算符(了解) 三目运算符 身份证运算符 成员运算符

考研后SpringBoot复习2—容器底层相关注解

考研后SpringBoot复习2 SpringBoot底层注解学习 与容器功能相关的注解与springboot的底层原理密切相关 组件添加注解configuration Spring Ioc容器部分回顾 包括在配置中注册,开启包扫描和注解驱动开发等需要在进行重新的学习回顾 实例 package com.dzu.boot;imp…

Python装饰器的专业解释

装饰器,其实是用到了闭包的原理来进行操作的。 单个装饰器: 以下是一个简单的例子: def outer(func):print("OUTER enter ...")def wrapper(*args, **kwargs):print("调用之前......")result func(*args, **kwargs)p…

【Vue2+3入门到实战】(17)VUE之VueCli脚手架自定认创建项目、ESlint代码规范与修复、 ESlint自动修正插件的使用 详细示例

目录 一、本节内容二、VueCli 自定义创建项目三、ESlint代码规范及手动修复1.JavaScript Standard Style 规范说明2.代码规范错误3.手动修正 四、通过eslint插件来实现自动修正 一、本节内容 VueCli脚手架自定认创建项目ESlint代码规范与修复ESlint自动修正插件 二、VueCli 自…

FA模板制作流程

1、FA模板制作的流程(完整复制模板制作) 总结: FA完整复制云桌面模板流程: 1、安装一个全新的Windows,挂载并安装tools 2、关闭防火墙、启动administrator本地超管用户 3、挂载FusionAccess_WindowsDesktop_Instal…

C/C++面向对象(OOP)编程-回调函数详解(回调函数、异步编程、函数指针、)

本文主要介绍回调函数的使用,包括函数指针、异步回调编程、主要通过详细的例子来指导在异步编程和事件编程中如何使用回调函数来实现。 🎬个人简介:一个全栈工程师的升级之路! 📋个人专栏:C/C精进之路 &…

黑马程序员SSM框架-SpringBoot

视频连接:SpringBoot-01-SpringBoot工程入门案例开发步骤_哔哩哔哩_bilibili SpringBoot简介 入门程序 也可以基于官网创建项目。 SpringBoot项目快速启动 下面的插件将项目运行所需的依赖jar包全部加入到了最终运行的jar包中,并将入口程序指定。 Spri…

【网络面试(2)】DNS原理-域名和IP地址的查询转换

从上一篇博客我们得知浏览器是如何生成了HTTP消息了,但是浏览器作为应用程序,是不具备向网络中发送请求的能力,而是需要委托给操作系统的内核协议栈来发送请求。在委托协议栈之前,浏览器还要做的一件事情就是将域名转换为IP地址。…

java进阶(三)

IO与网络编程 3 输入输出流IO3.1 基础定义3.2 IO框架3.3 读取字节输入流-InputStream3.3.1 InputStream.read3.3.2 FileInputStream类说明 3.4读取字符输入流Reader3.4.1 Reader.read3.4.2 FileReader类说明 3.5 字节输出流OutputStream3.5.1 OutputStream.write3.5.2 FileOutp…

nodejs微信小程序+python+PHP特困救助供养信息管理系统-计算机毕业设计推荐

目 录 摘 要 I ABSTRACT II 目 录 II 第1章 绪论 1 1.1背景及意义 1 1.2 国内外研究概况 1 1.3 研究的内容 1 第2章 相关技术 3 2.1 nodejs简介 4 2.2 express框架介绍 6 2.4 MySQL数据库 4 第3章 系统分析 5 3.1 需求分析 5 3.2 系统可行性分析 5 3.2.1技术可行性:…

分库分表之Mycat应用学习四

4 分片策略详解 分片的目标是将大量数据和访问请求均匀分布在多个节点上,通过这种方式提升数 据服务的存储和负载能力。 4.1 Mycat 分片策略详解 总体上分为连续分片和离散分片,还有一种是连续分片和离散分片的结合,例如先 范围后取模。 …

基于AT89C51单片机可做实物的温度烟雾火灾报警设计

点击链接获取Keil源码与Project Backups仿真图: https://download.csdn.net/download/qq_64505944/88658141?spm1001.2014.3001.5503 C 源码仿真图毕业设计实物制作步骤02 摘要 随着现代家庭用火、用电量的增加,家庭火灾发生的频率越来越高。火灾报警…

浅学lombok

Lombok(Project Lombok)是一个用于 Java 编程语言的开源库,旨在减少 Java 代码中的冗余和样板代码,提高开发人员的生产力。它通过使用注解来自动生成 Java 类的常见方法和代码,从而使开发人员能够编写更简洁、更具可读…

ColibriSM v1.4.2 已注册– 仿脸书类社交网络PHP源码

ColibriSM:当代社交网络平台的崛起 一、开篇与概述 在信息时代的浪潮中,社交媒体成为了人们日常生活中不可或缺的一部分。ColibriSM,作为一个仿照脸书(Facebook)、推特(Twitter)和照片墙&#…

WPF 新手指引弹窗

新手指引弹窗介绍 我们在第一次使用某个软件时,通常会有一个“新手指引”教学引导。WPF实现“新手指引”非常方便,且非常有趣。接下来我们就开始制作一个简单的”新手指引”(代码简单易懂,便于移植),引用到我们的项目中又可添加一…