20165230 Learning Basics and C language Basic survey skills learning experience
I am good at playing the piano. As a child, I had a lot of interest classes, such as piano, dance, calligraphy, painting and so on, the only one to insist so far only piano. A careful study of the piano has been 12 years, can not be said to have mastered, but has been more skilled than most people of this skill. The most important thing for playing the piano is the need for repeated practice and perseverance. Playing the piano at the beginning is very boring, because the practice tracks are the most basic and simplest notes, and you can't practice your favorite tracks from the start. Only through constant practice of lifting fingers and fixed hand type, can have a solid basic skills, and then in the future to practice more difficult songs handy. This is in common with the experience mentioned in Lou's Teacher's blog:
Sports Beginners Practice all need to repeat the action, such as "Learning to play table tennis" to practice swing, swing after thousands of times after the action will be stereotypes, that is, the coach often said "muscle has memory ability", after the actual combat can be done without hesitation.
--Quoting from "excellent teaching methods---Coaching and doing high school"
The piano is a quantitative to qualitative change process, from the hand-type fixed to the staff of the spectrum, only through constant practice to master and skilled. As Lou's teacher said:
Practice must have a certain amount to cause qualitative change
Skill enhancement should be "deliberately trained"
Low-level repetition doesn't work, and training time is no longer useful.
--Quoting from "excellent teaching methods---Coaching and doing high school"
There must be a point in the boring practice: focus. Do anything if you do not focus on the two use or even three, practice more than just do a useless work. The practice of not taking a heart is always futile, and I have a deep understanding of it. In the beginning to learn to play the piano, every day my parents will ask me to play piano, play after playing the pianos to go out with other children to play, when I have fun I will be very reluctant to practice the piano, sometimes will lose temper, in the mind: why I want to do so boring and boring things. Not only can not focus on them, but also with negative emotions to practice the piano, the effect is conceivable. As Lou's teacher said:
When practicing, you must be highly focused. All students understand the truth: it is not the class that really determines your level, but the time you study alone. Not focus, the effect will be very poor.
--quoting from the one-year summary of the deliberate training of table tennis in secondary school
To tell the truth, persistence is not an easy thing to do. In the process of learning piano, I have experienced the bottleneck period, have abandoned the idea, but under the supervision and help of parents, I have done perseverance. Here, I want to thank my parents, is that they give me the greatest encouragement and accompany when I am about to give up, is they accompany me through one after another difficulties, successfully test the piano 10 level certificate. We all harvest in this process, progress, persist.
-
I think learning Java should be like learning to play the piano. Need my repeated practice, only through a certain amount of accumulation in order to achieve a qualitative leap, but also to cultivate interest in the "Java" course, the teacher will be like my parents in the study of the role of supervision, in the face of difficulties, in time to seek the help of teachers and classmates.
C language Basics
-
Q: How did you learn C? (Homework, experiment, textbook, others), what are the experiences and lessons of C language learning compared to your superb skills?
A: Through the pre-class preview textbooks, class with the teacher's thinking carefully listen and take notes, class in time to review and in the operating system and experiment constantly practice and reflection to learn. Only through a lot of practice can be skilled, the code can be handy, to develop the habit of writing code every day, must not be able to cope with the teacher, the deadline of the day before the hastily written code done.
-
Q: How many lines of C code have you written so far? What is the understanding? Quantitative change caused qualitative change, how to balance the quality and quantity?
A: Approximately 4000 lines of C code are written. Can do most of the understanding of written code. In the process of writing code, if you do not understand, I will be self-taught textbooks and seek the help of teachers and students in-depth understanding of the code. Only to achieve a certain amount of quantitative change can cause qualitative change, the process is like boiling water, if burned to 99 ℃, if not adhere to the last 1 ℃, water will never boil. Only by constant practice can you be handy.
-
Q: Did you learn the C language, you divide the array pointer, pointer array, function pointer, pointer function these concepts?
A: Clear the points. The
array pointer is a pointer to an array, essentially a pointer;
The Pointer array is an array that contains several pointers, essentially an array;
The function pointer is a pointer to a function, which is essentially a pointer;
The Pointer function is a function that returns a value as a pointer, essentially a function.
-
Q: Have you learned the C language, do you understand the differences and connections between files and streams? How do I differentiate between text files and binaries? How do I programmatically manipulate these two files?
A: Sorry, I do not understand, I use the Internet query to understand the knowledge and answer this question. The
File is the basic unit of computer-managed data and is an important place for applications to save and read data.
A stream is an abstract concept of a sequence of bytes, such as a file, an input/output device, an internal process communication pipeline, and so on. Stream provides a way to write bytes to the backing store and read bytes from the backing memory.
See: File and Stream differences and links
Text files are character-encoded files, common encodings are ASCII-encoded, Unicode-encoded, and so on. Binary files are value-coded files, and you can specify what a value is (a process that can be considered a custom encoding, depending on your application).
See: Differences between a text file and a binary file
Understand the operation of both files by reviewing the processing of text files and binary files
- Q: Have you learned the C language, do you know what is process-oriented programming? What is the way it solves the problem?
"Process oriented" is a process-centric programming idea. is to analyze the steps required to solve the problem, and then use the function to implement the step by step, the use of a one-time call in turn.
The general process is the refinement from the top down. So the most important aspect of the process is the modular way of thinking.
See: What is process-oriented programming
Q: What is a module in C language? Have you ever written a program for multiple source files?
A: The module is the source file that can realize each function, can realize certain function by calling the module in the main function. I have not written more than one source file program.
Q: Have you learned the C language, do you know what is "high cohesion, low coupling"? How does this principle apply to high-quality programming?
A: "High cohesion, low coupling" refers to a program in each module of strong independence, the connection between the modules as little as possible, the degree of mutual influence is small.
Q: Having learned the C language, how do you copy the contents of array A into array B? How do I find the number 5 in an integer array a? How do I sort an integer array a (small to large, from large to small)? Write the appropriate program.
1. Copy the contents of array A to array b
#include <stdio.h>int main(){ int i,j,n,A[100],B[100]; printf("input n:\n"); scanf("%d",&n); printf("input A:\n"); for(i=0;i<n;i++) { scanf("%d\n",&A[i]); } for(j=0;j<n;j++) { B[j]=A[j]; printf("%d",B[j]); }}
2. Find the integer array A with no number 5
#include<stdio.h>int main(){ int A[100]; int i; for(i=0;i<100;i++) { scanf("%d",&A[i]); } for(i=0;i<100;i++) { if(A[i]==5) { printf("数组中数字有 5 !\n"); } else { printf("数组中数字没有 5 !\n"); } } return 0; }
3. Sort the integer array a (from small to large, from large to small)
Sort a (small to large):
#include <stdio.h>main(){ int a[100],i,j,n,t; printf("input n:"); scanf("%d",&n); printf("input a:"); for(i=0;i<n;i++) { scanf("%d",&a[i]); } for(i=0;i<n-1;i++) { for(j=i+1;j<n;j++) { if(a[j]<a[i]) { t=a[j]; a[j]=a[i]; a[i]=t; } } } for(i=0; i<n; i++){ printf("%d\n",a[i]);}}
2. Sort a (from large to small):
#include <stdio.h>main(){ int a[100],i,j,n,t; printf("input n:"); scanf("%d",&n); printf("input a:"); for(i=0;i<n;i++) { scanf("%d",&a[i]); } for(i=0;i<n-1;i++) { for(j=i+1;j<n;j++) { if(a[j]>a[i]) { t=a[j]; a[j]=a[i]; a[i]=t; } } } for(i=0; i<n; i++) { printf("%d\n",a[i]); }}
Q: Write a program that counts how many lines of code your C language has written.
A: Sorry, I can't write.
Q: Do you know what a breakpoint is? Give an example of your own debug program.
A: The breakpoint is where we set the interrupt in the debugger, and the program runs to the breakpoint and stops to step through the program. Examples are as follows:
Q:java of the chapters
- What is the structure of the source file?
- What is the difference between a data type in Java and an array and a data type in the C language and an array?
- What is the function of the instanceof operator?
- What are the advantages and disadvantages of class method and instance method in practical application?
- How do you implement abstract programming specifically?
- What is the difference between an excuse-oriented programming and an abstract-oriented programming?
- Specifically, how do I declare a custom exception class?
- How do I use StringTokenizer objects?
- How can a monitor be implemented via an interface?
- What are the different types of objects created by different subclasses and what are their applications?
- What is a database? How do I use JDBC technology for database design?
- How do I use the Wait () method and the Notifyall () method?
- What are UDP and TCP?
- Can you draw 3D graphics?
- What are the pros and cons of generic classes?
Q: What specific goals do you have for the study of Java programming in comparison to the study of C language? How to improve the program design ability and develop the computational thinking through deliberate training? How do you achieve your goals through "doing middle school"?
A: First of all to develop the habit of writing code daily, the use of good teachers to provide us with the blue Ink Cloud class and blog Park to urge their continuous learning. Master the Java language through a lot of exercises to meet the teacher's requirements for our code lines. Follow the pace of the teacher, learn more and ask more thinking. To do as the teacher said can improve the program design ability and cultivate computational thinking:
Take the "comfort zone", only in the "Learning area" study, pay attention to gradual progress, can not enter the "panic zone."
Divide the training content into a small piece of a small piece, respectively, to carry out targeted exercises. These targeted small pieces of exercise, to be repeated in a large number of
--quoting from the one-year summary of the deliberate training of table tennis in secondary school
Only through a lot of practice, in doing high school, diligent thinking, often summed up, to achieve the goal.
Discover problems in practice, solve problems, improve in practice, iterate in practice, skills can be continuously improved
--quoting from the one-year summary of the deliberate training of table tennis in secondary school
20165230 Learning Basics and C-language basic survey