Looking back on 2023, my programming learning journey

Preface

The college entrance examination ended on June 8th. Although the scores have not yet been released, I have roughly planned what major I want to study. Yes, it is computer science. After the scores were released, I successfully entered the computer major that I dreamed of. During the holiday, I met Brother Peng through Station B, which guided me in the direction of my learning and embarked on my programming learning journey.
In this blog I will share my story with C language, competition, csdn

Me and C language

First introduction to C language

After watching Brother Peng's video for the first time, I downloaded the vs compiler, wrote the first piece of code in my life, and officially started studying the system.
First, I learned how to input and output in C language, and then learned the three structures of C language, sequential structure, selection structure, and loop structure, so I wrote my first official blog: Selection and loop statements (C language) This also became my first encounter with csdn.
When I first entered school, I started to do the school's OJ questions. Because I had never done the questions, the efficiency was not very high. Sometimes one question could even take an hour or two, but I still persisted and the progress was obvious. Faced with these simple basics The questions no longer give me a headache, and I have also enlightened my computer thinking. Just when I thought I was invincible, I participated in the first freshmen weekly competition organized by the school. U1s1 lost ugly. It also made me realize my shortcomings and started to work harder to learn programming.

Simple minesweeper game

After learning the relevant knowledge of functions and arrays, I wrote my first small game (although it was very simple) "Mine Sweeper" based on the ideas provided by Brother Peng. Through my own research, I made the picture become It was smoother, and a reward mechanism and a highest record function were added, so I wrote Minesweeper as a blog to share my ideas and use two-dimensional arrays and functions to implement the Minesweeper game . At that time, I took the whole dormitory to try it out for a long time, and I was very happy at the same time. It also strengthened my determination to learn programming well.

The beauty of binary

Soon I learned the original code, one's complement, and complement of binary. Based on these, I learned the bit operators, and studied the storage methods of integers and floating point numbers in the computer, which gave me a deeper understanding of binary. , although binary is a bit abstract compared to the decimal system we use daily, the beauty of binary numbers is that it is simple, efficient, reliable, and highly portable. These advantages make binary numbers widely used in the fields of computer science and information technology. After learning these, I have a deeper understanding of computers. At the same time, I also wrote related blogs to share and record my learning.
How integers and floating point numbers are stored in memory Bit
operators

magic pointer

Then I learned about pointers. Pointers are a very important data type in C language. They save the memory address of a variable. By using pointers, we can directly access and modify the value of a variable instead of operating through the variable name. Peng Ge’s pointers are very detailed (Peng Ge yyds). The flexibility of pointers makes them widely used in various scenarios in C language, which is very important, so I wrote it when I thought I understood it well. A blog about pointers. I want to share my knowledge, hoping to help friends who want to learn pointers. Because there is a lot of content, it is divided into three issues:
Issue 1, Issue
2,
Issue 3.

powerful structure

Learning about structs was a revelation to me because you can define any type and number of members in a struct as needed, making it ideal for representing complex objects in the real world. For example, to describe a student, we can include the student's name, age, gender, etc. in a structure. The complex memory alignment, self-reference, bit segment and other knowledge of the structure are also eliminated by me, and then I also wrote a blog about structures, divided into two issues:
Issue 1
and Issue 2

Flexible dynamic memory management

Why is dynamic memory management so flexible? Dynamic memory management allows us to allocate and release memory as needed at runtime, which makes the program more flexible and able to handle a variety of different situations and needs. By using dynamic memory management, we can dynamically create and delete data structures while the program is running, thereby achieving flexible control and processing of data. This flexibility makes the C language a great advantage when writing a variety of different programs. Although there are not so many knowledge points compared to pointers, they are still very important. I often make some mistakes when studying, so I summarized them and wrote a blog to share:
Dynamic Memory Management

Summarize

Looking back on this C language learning journey, I feel that I have gained a lot. From the initial confusion and confusion to the current understanding and mastery, every step is full of challenges and growth. C language not only taught me programming skills, but also taught me the meaning of persistence and hard work. I believe that continuous practice and learning will make me better!

me and competition

Actually, I had heard about algorithm competitions before learning programming, and I have always been very interested in them, so I also actively participated in the freshman competitions in my school and the school next door. I have to say that the questions are not very easy to solve, and it often takes an hour. You may not be able to get one, and you have to make up for the unfinished questions after the competition, because there are many algorithm questions that you have never seen before during the competition, but it is also a blessing in disguise. I learned these algorithms through problem solving or csdn search. Although this road is full of faith, it must be worth it. Every time I play a game, I will learn a lot of new things, which makes me play better every time. I signed up for the Blue Bridge Cup, aiming for the national award, and will continue to train and learn in the future!

Me and CSDN

As I said before, I usually write blogs to share knowledge with everyone, but after I just registered a csdn account and wrote my own blog, I found that few people clicked on my blog, which made me feel disappointed and even caused I kind of want to give up the idea of ​​blogging, but I really like the saying "As long as you keep moving forward, the road will keep extending." So I do my best to keep moving forward (continue to create). As time goes by, my fans are getting more and more , now my fans have reached a thousand, although it is not many, but I am still very proud, so in the future I will continue to create and share knowledge, let us make good use of the csdn platform, continue to learn, and make progress together!

Conclusion

Looking back on 2023, I feel extremely fortunate and proud. I want to thank everyone who has supported me and been with me on this journey. It is your encouragement and help that makes me go on more firmly. Let us work together to write a beautiful chapter of programming learning!
Here I wish you all a happy New Year in 2024, and hope that you will go further and further on the road of learning and realize your dreams and goals.

Insert image description here

Guess you like

Origin blog.csdn.net/Tokai___Teio/article/details/135318694