Làm thế nào để học lập trình trong C: 12 bước (có hình ảnh)

Mục lục:

Làm thế nào để học lập trình trong C: 12 bước (có hình ảnh)
Làm thế nào để học lập trình trong C: 12 bước (có hình ảnh)

Video: Làm thế nào để học lập trình trong C: 12 bước (có hình ảnh)

Video: Làm thế nào để học lập trình trong C: 12 bước (có hình ảnh)
Video: Học Lập Trình Cho Người Mới Bắt Đầu | Lộ Trình 6 Tháng Trở Thành Kĩ Sư Phần Mềm Xịn 2024, Có thể
Anonim

C là một trong những ngôn ngữ lập trình cũ. Nó đã được phát triển vào những năm 70, nhưng nó vẫn rất mạnh mẽ nhờ mức độ thấp của nó. Học C là một cách tuyệt vời để giới thiệu bản thân với các ngôn ngữ phức tạp hơn và kiến thức bạn thu được sẽ hữu ích trong hầu hết mọi ngôn ngữ lập trình và có thể giúp bạn phát triển ứng dụng. Để tìm hiểu cách bắt đầu lập trình bằng C, hãy xem Bước 1 bên dưới.

Các bước

Phần 1/6: Chuẩn bị sẵn sàng

53403 1 2
53403 1 2

Bước 1. Tải xuống và cài đặt trình biên dịch

Mã C cần được biên dịch bởi một chương trình thông dịch mã thành các tín hiệu mà máy có thể hiểu được. Các trình biên dịch thường miễn phí và các trình biên dịch khác nhau có sẵn cho các hệ điều hành khác nhau.

  • Đối với Windows, hãy thử Microsoft Visual Studio Express hoặc MinGW.
  • Đối với Mac, XCode là một trong những trình biên dịch C tốt nhất.
  • Đối với Linux, gcc là một trong những lựa chọn phổ biến nhất.
53403 2 2
53403 2 2

Bước 2. Hiểu những điều cơ bản

C là một trong những ngôn ngữ lập trình cũ và có thể rất mạnh mẽ. Nó được thiết kế cho hệ điều hành Unix, nhưng đã được chuyển và mở rộng cho gần như tất cả các hệ điều hành. Phiên bản hiện đại của C là C ++.

Về cơ bản, C bao gồm các hàm và trong các hàm này, bạn có thể sử dụng các biến, câu lệnh điều kiện, vòng lặp để lưu trữ và thao tác dữ liệu

53403 3 2
53403 3 2

Bước 3. Kiểm tra một số mã cơ bản

Hãy xem (rất) chương trình cơ bản dưới đây để hiểu rõ về cách một số khía cạnh khác nhau của ngôn ngữ hoạt động cùng nhau và để có ý tưởng về cách các chương trình hoạt động.

#include int main () {printf ("Xin chào, Thế giới! / n"); getchar (); trả về 0; }

  • Lệnh #include xảy ra trước khi chương trình bắt đầu và tải các thư viện chứa các chức năng bạn cần. Trong ví dụ này, stdio.h cho phép chúng ta sử dụng các hàm printf () và getchar ().
  • Lệnh int main () cho trình biên dịch biết rằng chương trình đang chạy hàm có tên "main" và nó sẽ trả về một số nguyên khi kết thúc. Tất cả các chương trình C đều chạy một chức năng "chính".
  • Dấu {} chỉ ra rằng mọi thứ bên trong chúng đều là một phần của hàm. Trong trường hợp này, chúng biểu thị rằng mọi thứ bên trong đều là một phần của chức năng "chính".
  • Hàm printf () hiển thị nội dung của dấu ngoặc đơn trên màn hình của người dùng. Các dấu ngoặc kép đảm bảo rằng chuỗi bên trong được in theo nghĩa đen. Chuỗi / n yêu cầu trình biên dịch di chuyển con trỏ đến dòng tiếp theo.
  • Các; biểu thị sự kết thúc của một dòng. Hầu hết các dòng mã C cần kết thúc bằng dấu chấm phẩy.
  • Lệnh getchar () yêu cầu trình biên dịch đợi một đầu vào tổ hợp phím trước khi tiếp tục. Điều này rất hữu ích vì nhiều trình biên dịch sẽ chạy chương trình và đóng cửa sổ ngay lập tức. Điều này giữ cho chương trình không kết thúc cho đến khi một phím được nhấn.
  • Lệnh return 0 cho biết sự kết thúc của hàm. Lưu ý cách hàm "main" là một hàm int. Điều này có nghĩa là nó sẽ cần một số nguyên được trả về sau khi chương trình kết thúc. "0" chỉ ra rằng chương trình đã hoạt động chính xác; bất kỳ số nào khác sẽ có nghĩa là chương trình gặp lỗi.
53403 4 2
53403 4 2

Bước 4. Thử biên dịch chương trình

Nhập mã vào trình soạn thảo mã của bạn và lưu nó dưới dạng tệp "*.c". Biên dịch nó trong trình biên dịch của bạn, thường bằng cách nhấp vào nút Xây dựng hoặc Chạy.

53403 5 2
53403 5 2

Bước 5. Luôn nhận xét về mã của bạn

Nhận xét là một phần của mã không được biên dịch, nhưng cho phép bạn giải thích những gì đang xảy ra. Điều này rất hữu ích để nhắc nhở bản thân rằng mã của bạn dùng để làm gì và giúp đỡ các nhà phát triển khác, những người có thể đang xem mã của bạn.

  • Để nhận xét ở vị trí C / * ở đầu nhận xét và * / ở cuối.
  • Nhận xét về tất cả trừ những phần cơ bản nhất trong mã của bạn.
  • Nhận xét có thể được sử dụng để xóa nhanh các phần mã của bạn mà không cần xóa chúng. Đơn giản chỉ cần đính kèm mã bạn muốn loại trừ với các thẻ nhận xét và sau đó biên dịch. Nếu bạn muốn thêm lại mã, hãy xóa các thẻ.

Phần 2/6: Sử dụng các biến

53403 6 2
53403 6 2

Bước 1. Tìm hiểu chức năng của các biến

Các biến cho phép bạn lưu trữ dữ liệu, từ các tính toán trong chương trình hoặc từ đầu vào của người dùng. Các biến cần được xác định trước khi bạn có thể sử dụng chúng và có một số loại để lựa chọn.

Một số kiểu biến phổ biến hơn bao gồm int, char và float. Mỗi loại lưu trữ một loại dữ liệu khác nhau

53403 7 2
53403 7 2

Bước 2. Tìm hiểu cách khai báo các biến

Các biến cần phải được thiết lập, hoặc "khai báo", trước khi chúng có thể được chương trình sử dụng. Bạn khai báo một biến bằng cách nhập kiểu dữ liệu theo sau là tên của biến. Ví dụ, sau đây là tất cả các khai báo biến hợp lệ:

float x; tên nhân vật; int a, b, c, d;

  • Lưu ý rằng bạn có thể khai báo nhiều biến trên cùng một dòng, miễn là chúng cùng kiểu. Chỉ cần tách các tên biến bằng dấu phẩy.
  • Giống như nhiều dòng trong C, mỗi dòng khai báo biến cần kết thúc bằng dấu chấm phẩy.
53403 8 2
53403 8 2

Bước 3. Biết nơi khai báo biến

Các biến phải được khai báo ở đầu mỗi khối mã (Các phần mã của bạn được đặt trong dấu ngoặc vuông {}). Nếu bạn cố gắng khai báo một biến sau đó trong khối, chương trình sẽ hoạt động không chính xác.

53403 9 1
53403 9 1

Bước 4. Sử dụng các biến để lưu trữ thông tin đầu vào của người dùng

Bây giờ bạn đã biết những điều cơ bản về cách hoạt động của các biến, bạn có thể viết một chương trình đơn giản sẽ lưu trữ dữ liệu đầu vào của người dùng. Bạn sẽ sử dụng một chức năng khác trong chương trình, được gọi là scanf. Hàm này tìm kiếm đầu vào được cung cấp cho các giá trị cụ thể.

#include int main () {int x; printf ("Nhập một số:"); scanf ("% d", & x); printf ("Bạn đã nhập% d", x); getchar (); trả về 0; }

  • Chuỗi "% d" yêu cầu scanf tìm kiếm các số nguyên trong đầu vào của người dùng.
  • Dấu & trước biến x cho scanf biết nơi tìm biến để thay đổi nó và lưu trữ số nguyên trong biến.
  • Lệnh printf cuối cùng đọc lại số nguyên đầu vào cho người dùng.
53403 10 2
53403 10 2

Bước 5. Thao tác với các biến của bạn

Bạn có thể sử dụng các biểu thức toán học để thao tác dữ liệu mà bạn đã lưu trữ trong các biến của mình. Sự khác biệt quan trọng nhất cần nhớ đối với các biểu thức toán học là một = đặt giá trị của biến, trong khi == so sánh các giá trị ở hai bên để xem chúng có bằng nhau hay không.

x = 3 * 4; / * đặt "x" thành 3 * 4 hoặc 12 * / x = x + 3; / * thêm 3 vào giá trị ban đầu của "x" và đặt giá trị mới là biến * / x == 15; / * kiểm tra xem "x" có bằng 15 * / x <10 hay không; / * kiểm tra xem giá trị của "x" có nhỏ hơn 10 * / không

Phần 3/6: Sử dụng câu lệnh có điều kiện

53403 11 2
53403 11 2

Bước 1. Hiểu những điều cơ bản về câu lệnh điều kiện

Câu lệnh điều kiện là những gì thúc đẩy hầu hết các chương trình. Chúng là những câu lệnh được xác định là TRUE hoặc FALSE, và sau đó được thực hiện dựa trên kết quả. Câu lệnh cơ bản nhất là câu lệnh if.

TRUE và FALSE hoạt động trong C khác với những gì bạn có thể quen. Các câu lệnh TRUE luôn kết thúc bằng một số khác không. Khi bạn thực hiện so sánh, nếu kết quả là TRUE thì trả về "1". Nếu kết quả là FALSE, thì trả về "0". Hiểu được điều này sẽ giúp bạn thấy cách các câu lệnh IF được xử lý

53403 12 2
53403 12 2

Bước 2. Tìm hiểu các toán tử điều kiện cơ bản

Các câu lệnh điều kiện xoay quanh việc sử dụng các toán tử toán học để so sánh các giá trị. Danh sách sau đây chứa các toán tử điều kiện được sử dụng phổ biến nhất.

/ * lớn hơn * / </ * nhỏ hơn * /> = / * lớn hơn hoặc bằng * / <= / * nhỏ hơn hoặc bằng * / == / * bằng * /! = / * không bằng đến */

10> 5 ĐÚNG 6 <15 ĐÚNG 8> = 8 ĐÚNG 4 <= 8 ĐÚNG 3 == 3 ĐÚNG 4! = 5 ĐÚNG

53403 13 2
53403 13 2

Bước 3. Viết câu lệnh IF cơ bản

Bạn có thể sử dụng câu lệnh IF để xác định chương trình sẽ làm gì tiếp theo sau khi câu lệnh được đánh giá. Bạn có thể kết hợp nó với các câu lệnh điều kiện khác sau này để tạo ra nhiều tùy chọn mạnh mẽ, nhưng bây giờ hãy viết một câu lệnh đơn giản để làm quen với chúng.

#include int main () {if (3 <5) printf ("3 nhỏ hơn 5"); getchar (); }

53403 14 2
53403 14 2

Bước 4. Sử dụng câu lệnh ELSE / ELSE IF để mở rộng các điều kiện của bạn

Bạn có thể xây dựng dựa trên các câu lệnh IF bằng cách sử dụng các câu lệnh ELSE và ELSE IF để xử lý các kết quả khác nhau. Câu lệnh ELSE chạy nếu câu lệnh IF là FALSE. Câu lệnh ELSE IF cho phép bạn gộp nhiều câu lệnh IF vào một khối mã để xử lý các trường hợp khác nhau. Xem chương trình ví dụ dưới đây để biết cách họ tương tác.

#include int main () {int age; printf ("Vui lòng nhập tuổi hiện tại của bạn:"); scanf ("% d", & age); if (age <= 12) {printf ("Bạn chỉ là một đứa trẻ! / n"); } else if (age <20) {printf ("Tuổi mới lớn thật tuyệt! / n"); } else if (age <40) {printf ("Bạn vẫn còn trẻ! / n"); } else {printf ("Cùng với tuổi khôn. / n"); } trả về 0; }

Chương trình lấy đầu vào từ người dùng và đưa nó qua các câu lệnh IF. Nếu số thỏa mãn câu lệnh đầu tiên, thì câu lệnh printf đầu tiên được trả về. Nếu nó không thỏa mãn câu lệnh đầu tiên, nó sẽ được thực hiện qua từng câu lệnh ELSE IF cho đến khi nó tìm thấy câu lệnh phù hợp. Nếu nó không khớp với bất kỳ cái nào trong số chúng, nó sẽ chuyển qua câu lệnh ELSE ở cuối

Phần 4/6: Vòng lặp học tập

53403 15 2
53403 15 2

Bước 1. Hiểu cách hoạt động của các vòng lặp

Vòng lặp là một trong những khía cạnh quan trọng nhất của lập trình, vì chúng cho phép bạn lặp lại các khối mã cho đến khi đáp ứng các điều kiện cụ thể. Điều này có thể làm cho các hành động lặp lại rất dễ thực hiện và giúp bạn không phải viết các câu lệnh điều kiện mới mỗi khi bạn muốn điều gì đó xảy ra.

Có ba loại vòng lặp chính: FOR, WHILE và DO… WHILE

53403 16 2
53403 16 2

Bước 2. Sử dụng vòng lặp FOR

Đây là loại vòng lặp phổ biến và hữu ích nhất. Nó sẽ tiếp tục chạy chức năng cho đến khi các điều kiện đặt trong vòng lặp FOR được đáp ứng. Vòng lặp FOR yêu cầu ba điều kiện: khởi tạo biến, điều kiện được đáp ứng và cách biến được cập nhật. Nếu bạn không cần tất cả các điều kiện này, bạn vẫn cần để lại một khoảng trống với dấu chấm phẩy, nếu không vòng lặp sẽ chạy mãi mãi.

#include int main () {int y; for (y = 0; y <15; y ++;) {printf ("% d / n", y); } getchar (); }

Trong chương trình trên, y được đặt thành 0 và vòng lặp tiếp tục với điều kiện giá trị của y nhỏ hơn 15. Mỗi lần giá trị của y được in ra, 1 được thêm vào giá trị của y và lặp lại vòng lặp. Khi y = 15, vòng lặp sẽ bị phá vỡ

53403 17 2
53403 17 2

Bước 3. Sử dụng vòng lặp WHILE

Vòng lặp WHILE đơn giản hơn vòng lặp FOR. Chúng chỉ có một điều kiện và vòng lặp hoạt động miễn là điều kiện đó đúng. Bạn không cần khởi tạo hoặc cập nhật biến, mặc dù bạn có thể làm điều đó trong phần chính của vòng lặp.

#include int main () {int y; while (y <= 15) {printf ("% d / n", y); y ++; } getchar (); }

Lệnh y ++ thêm 1 vào biến y mỗi khi vòng lặp được thực hiện. Khi y chạm đến 16 (hãy nhớ, vòng lặp này diễn ra miễn là y nhỏ hơn hoặc bằng 15), vòng lặp sẽ bị phá vỡ

53403 18 2
53403 18 2

Bước 4. Sử dụng DO

.. Trong khi lặp lại.

Vòng lặp này rất hữu ích cho các vòng lặp mà bạn muốn đảm bảo chạy ít nhất một lần. Trong vòng lặp FOR và WHILE, điều kiện được kiểm tra ở đầu vòng lặp, có nghĩa là nó không thể vượt qua và thất bại ngay lập tức. Vòng lặp DO… WHILE kiểm tra các điều kiện ở cuối vòng lặp, đảm bảo rằng vòng lặp thực hiện ít nhất một lần.

#include int main () {int y; y = 5; do {printf ("Vòng lặp này đang chạy! / n"); } while (y! = 5); getchar (); }

  • Vòng lặp này sẽ hiển thị thông báo mặc dù điều kiện là FALSE. Biến y được đặt thành 5 và vòng lặp WHILE được đặt để chạy khi y không bằng 5, do đó, vòng lặp kết thúc. Tin nhắn đã được in vì điều kiện không được kiểm tra cho đến khi kết thúc.
  • Vòng lặp WHILE trong tập DO… WHILE phải được kết thúc bằng dấu chấm phẩy. Đây là lần duy nhất một vòng lặp được kết thúc bằng dấu chấm phẩy.

Phần 5/6: Sử dụng các hàm

53403 19 1
53403 19 1

Bước 1. Hiểu khái niệm cơ bản về hàm

Các hàm là các khối mã độc lập có thể được gọi bởi các phần khác của chương trình. Chúng làm cho việc lặp lại mã rất dễ dàng và chúng giúp chương trình dễ đọc và thay đổi hơn. Các hàm có thể bao gồm tất cả các kỹ thuật được đề cập trước đó đã học trong bài viết này và thậm chí cả các hàm khác.

  • Dòng main () ở đầu tất cả các ví dụ trên là một hàm, cũng như getchar ()
  • Các chức năng là điều cần thiết để mã hiệu quả và dễ đọc. Sử dụng tốt các chức năng để hợp lý hóa chương trình của bạn.
53403 20 2
53403 20 2

Bước 2. Bắt đầu với một dàn ý

Các hàm được tạo tốt nhất khi bạn phác thảo những gì bạn muốn nó đạt được trước khi bạn bắt đầu viết mã thực tế. Cú pháp cơ bản cho các hàm là "return_type name (đối số1, đối số2, v.v.);". Ví dụ: để tạo một hàm cộng hai số:

int add (int x, int y);

Thao tác này sẽ tạo một hàm cộng hai số nguyên (x và y) và sau đó trả về tổng dưới dạng số nguyên

53403 21 1
53403 21 1

Bước 3. Thêm chức năng vào một chương trình

Bạn có thể sử dụng phác thảo để tạo một chương trình lấy hai số nguyên mà người dùng nhập vào và sau đó cộng chúng lại với nhau. Chương trình sẽ xác định cách hoạt động của hàm "add" và sử dụng nó để thao tác với các số đầu vào.

#include int add (int x, int y); int main () {int x; int y; printf ("Nhập hai số cần cộng với nhau:"); scanf ("% d", & x); scanf ("% d", & y); printf ("Tổng các số của bạn là% d / n", add (x, y)); getchar (); } int add (int x, int y) {return x + y; }

  • Lưu ý rằng dàn ý vẫn nằm ở đầu chương trình. Điều này cho trình biên dịch biết những gì sẽ xảy ra khi hàm được gọi và những gì nó sẽ trả về. Điều này chỉ cần thiết nếu bạn muốn xác định hàm sau này trong chương trình. Bạn có thể định nghĩa add () trước hàm main () và kết quả sẽ giống nhau nếu không có đường viền.
  • Chức năng thực tế của hàm được định nghĩa ở cuối chương trình. Hàm main () thu thập các số nguyên từ người dùng và sau đó gửi chúng đến hàm add () để xử lý. Sau đó, hàm add () trả về kết quả cho hàm main ()
  • Bây giờ add () đã được định nghĩa, nó có thể được gọi ở bất kỳ đâu trong chương trình.

Phần 6/6: Tiếp tục Học

53403 22 2
53403 22 2

Bước 1. Tìm một vài cuốn sách lập trình C

Bài viết này đề cập đến những kiến thức cơ bản, nhưng nó chỉ sơ lược về bề mặt của lập trình C và tất cả các kiến thức liên quan. Một cuốn sách tham khảo hay sẽ giúp bạn giải quyết vấn đề và giúp bạn khỏi phải đau đầu khi xuống đường.

53403 23 2
53403 23 2

Bước 2. Tham gia một số cộng đồng

Có rất nhiều cộng đồng, cả trực tuyến và trong thế giới thực, dành riêng cho lập trình và tất cả các ngôn ngữ yêu cầu. Tìm một số lập trình viên C có cùng chí hướng để trao đổi mã và ý tưởng, và bạn sẽ sớm thấy mình học hỏi được rất nhiều điều.

Tham dự một số hack-a-thons nếu có thể. Đây là những sự kiện mà các nhóm và cá nhân có giới hạn thời gian để đưa ra các chương trình và giải pháp, và thường thúc đẩy nhiều sáng tạo. Bạn có thể gặp rất nhiều lập trình viên giỏi theo cách này, và hack-a-thons xảy ra thường xuyên trên toàn cầu

53403 24 2
53403 24 2

Bước 3. Tham gia một số lớp học

Bạn không cần phải quay lại trường học để lấy bằng Khoa học Máy tính, nhưng tham gia một vài lớp học có thể tạo nên điều kỳ diệu cho việc học của bạn. Không gì có thể đánh bại được sự giúp đỡ tận tình từ những người thông thạo ngôn ngữ này. Bạn thường có thể tìm thấy các lớp học tại các trung tâm cộng đồng địa phương và các trường cao đẳng cơ sở, và một số trường đại học sẽ cho phép bạn kiểm tra các chương trình khoa học máy tính của họ mà không cần phải đăng ký.

53403 25 2
53403 25 2

Bước 4. Xem xét việc học C ++

Một khi bạn đã nắm rõ về C, sẽ không hại gì khi bắt đầu xem xét C ++. Đây là phiên bản C hiện đại hơn và cho phép linh hoạt hơn rất nhiều. C ++ được thiết kế với mục đích lưu tâm đến việc xử lý đối tượng và hiểu rõ C ++ có thể cho phép bạn tạo các chương trình mạnh mẽ cho hầu hết mọi hệ điều hành.

Lời khuyên

  • Luôn thêm nhận xét vào chương trình của bạn. Điều này không chỉ giúp những người khác có thể xem mã nguồn của nó mà còn giúp bạn nhớ những gì bạn đang viết và lý do tại sao. Bạn có thể biết mình đang làm gì tại thời điểm viết mã của mình, nhưng sau hai hoặc ba tháng, bạn sẽ không nhớ được nhiều.
  • Luôn nhớ kết thúc một câu lệnh như printf (), scanf (), getch (), v.v. bằng dấu chấm phẩy (;) nhưng không bao giờ chèn chúng sau các câu lệnh điều khiển như vòng lặp 'if', 'while' hoặc 'for'.
  • Khi gặp lỗi cú pháp khi biên dịch, nếu bạn lúng túng, hãy tìm kiếm trên Google (hoặc một công cụ tìm kiếm khác) với lỗi mà bạn nhận được. Rất có thể ai đó đã gặp phải vấn đề tương tự và đã đăng một giải pháp.
  • Mã nguồn của bạn cần có phần mở rộng *.c để trình biên dịch của bạn có thể hiểu rằng đó là tệp nguồn C.
  • Luôn nhớ rằng thực hành tạo nên sự hoàn hảo. Bạn càng thực hành viết một chương trình, bạn càng hiểu nó tốt hơn. Vì vậy, hãy bắt đầu với những chương trình đơn giản, ngắn gọn cho đến khi bạn vững bước, và sau đó khi bạn tự tin, bạn có thể chuyển sang những chương trình phức tạp hơn.
  • Cố gắng học cách xây dựng logic. Nó giúp giải quyết các vấn đề khác nhau trong khi viết mã.

Đề xuất: