On the Internet, I see a Study on the C language of Chao Niu.

Source: Internet
Author: User
Tags map data structure
Many people have no idea how to learn C language. They often ask me the same question: how to learn C language? I am a teacher and have been developing for many years. Program Like many people who have just started, the first computer language to learn is C language. After years of development, I have deeply realized how important C language is to a program designer. If you do not understand C language, it is almost ridiculous to write the underlying program, you want to write excellent and efficient programs. Why is C language so important?

First, the C language syntax structure is very concise and exquisite, and the program written is also very efficient and easy to describeAlgorithmMost programmers are willing to use the C language to describe the algorithm itself. Therefore, if you want to make some achievements in programming, you must learn it.
Second, the C language allows you to go deep into the underlying system. Which of the operating systems you know is not written in the C language? All windows, UNIX, Linux, Mac, OS/2 are inside and outside. If you do not understand C language, how can you go deep into these operating systems? Let alone write their kernel programs.
Third: many new languages are derived from C, C ++, Java, C #, J #, Perl... which one is not? After mastering the C language, you can master many languages. After simple learning, you can use these new languages for development, once again, the C language is an important foundation for programming. Another point: Even if you are recruiting programmers and taking tests in C language, you must master the C language if you want to join the IT industry.

So how to learn C language?

1: To do good things, you must first sharpen the tool.
Here we will introduce several essential things for learning C language:
A development environment, such as Turbo C 2.0, has occupied more than half of the development programs in the DOS era. However, in the Windows era, it is difficult to use Turbo C. It is difficult to edit the program and drag and drop the program. In addition, the function variable auto-sensing function is not available, and it is not convenient to query reference materials. We recommend that you use visual c ++. Although this is a big part, once it is installed, it is very convenient to use.
A learning tutorial, now the C language teaching materials such as Ox hair, but we recommend that you use "C language programming" Tan haoqiang editor of the second edition of Tsinghua University Press, this book is very suitable for beginners, And the content is also very refined.
In addition, there are a lot of auxiliary learning software. After all, it is now in the window era. Learning Software is as old as learning. I would like to recommend an integrated learning environment (C Language), which provides excellent knowledge points and routine explanations, as well as a test environment for question libraries. It is said that there are thousands of questions, there is even a Windows trubo C. Beginners can practice programming without having to install other compilers. It is very suitable for beginners. There is also a "C Language Learning System" software, but it is just a question bank system. If you think the question is not enough, you can try it.

2: sunflower collection
What is the best way to learn computer languages? Answer: Read the program.
That's right. Reading a program is the fastest and best way to get started with C language. Like me, now I want to learn other languages such as J # And C #, instead of reading books one by one, but learning their routines. Of course, for beginners who have never learned any computer language, it is best to read the tutorial first. After learning each chapter, you must carefully understand all the concepts of this chapter, then let alone all the routines mentioned in this chapter, and then carefully study the program until each line understands, and then find a few programming questions, preferably similar or the same as the routine, if you try to write a program that you already understand, you can write a program that is the same as it. It is definitely not necessarily true. If you don't believe it, just give it a try, if you can't write it out, don't worry. Go back and study the routine again, think about why you can't write it out, and then write the program again and again until you get it done. Congratulations, you are getting started.

3: reaching the peak
the highest level of writing a program is to master various methods (data structures) and methods (algorithms) to solve the problem ).
is writing the underlying program a master of program design? Also, writing underlying programs is nothing more than mastering the hardware structure. Besides, the hardware and hardware are different. To write a driver for a chip, it is nothing more than mastering the various registers and combinations of the chip, then write the value to read the value. That's all. This is just getting familiar with some IO functions. So how can we be proficient in programming? How can we be proficient in programming? For example, if you have 10 people in front of you and find someone named "Zhang San", what should you do? Method 1: Ask the 10 people directly: "Who is Zhang San ". 2nd Methods: You asked one by one, "Are you James ?", This person is James. Method 3: Ask a person one by one, "you don't know John, tell me ". Don't underestimate this question. Of course you will choose the first method. Yes, you are correct, because this method is the fastest and most efficient, however, finding the best way to solve the problem in programming and the means you use are an important sign of testing a programmer's programming level, and it is not easy to achieve. This problem is similar to the map data structure in data structures and algorithms. Therefore, mastering the data structure and some common algorithms is an inevitable path to success. At last, we recommend Yan Wenmin's "Data Structure" Tsinghua University Press. I hope everyone who wants to become a programmer can study this book.

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.