← Tất cả khoá học

Lập trình C cơ bản

Phù hợp người mới học lập trình

Biên soạn bởi Nguyễn Anh Tuấn

Khoá học đưa người mới qua C17 từ môi trường biên dịch đến chương trình dòng lệnh: biến, kiểu dữ liệu, nhập/xuất, toán tử, rẽ nhánh, vòng lặp, hàm, đệ quy, mảng, chuỗi, struct và 3 app nhỏ chạy trong terminal.

15 bài ~303 phút Đã xuất bản Cập nhật 11/06/2026

Học xong mèo con làm được gì?

  • Viết, biên dịch và chạy chương trình C bằng bộ cờ -std=c17 -Wall -Wextra.
  • Hiểu các khái niệm nền tảng: kiểu dữ liệu, biểu thức, luồng điều khiển, hàm và mảng.
  • Đọc lỗi/cảnh báo compiler ở mức đủ để tự sửa các lỗi người mới hay gặp.
  • Hoàn thành 3 app dòng lệnh nhỏ: Todo, Chi tiêu và Bình chọn.

Lộ trình học

  1. 1 C là gì? Lịch sử & lộ trình học C là gì, ra đời ở Bell Labs để viết Unix, vì sao tên C nối từ BCPL và B, C còn dùng ở đâu, và các đầu sách nên đọc để học C.
  2. 2 Cài đặt môi trường Cài compiler C và VS Code trên macOS, Windows, Ubuntu/Debian; dùng C17, warning flags và debug flag để biên dịch sạch.
  3. 3 Làm quen với C Viết hello.c, biên dịch thành file chạy được, chạy trong terminal, rồi đọc vài lỗi biên dịch cơ bản như thiếu ; hoặc thiếu }.
  4. 4 C biên dịch như thế nào? Đi từng bước từ file .c qua preprocessor, compiler, assembler, linker tới executable; hiểu header, object file và lỗi linker.
  5. 5 Biến & kiểu dữ liệu Khai báo biến với char, short, int, long long, float, double; xem sizeof, signed/unsigned, overflow và cách chọn kiểu dữ liệu phù hợp cho tiền tệ
  6. 6 Nhập & xuất (printf/scanf) Dùng printf và scanf: format specifier, độ rộng/precision khi in, dấu & khi đọc biến, và các lỗi nhập liệu cần nhận ra.
  7. 7 Toán tử & biểu thức Làm việc với toán tử số học, so sánh, logic, phép gán, precedence; hiểu chia nguyên, %, bool trong C17/C23 và bẫy = vs ==.
  8. 8 Chuyển đổi kiểu dữ liệu và các cạm bẫy phổ biến Hiểu implicit conversion và ép kiểu tường minh: vì sao 5 / 2 ra 2, int + double đổi kiểu thế nào, gán thu hẹp mất dữ liệu ra sao, và vì sao signed/unsigned dễ gây bug.
  9. 9 Rẽ nhánh: if/else & switch Viết if/else-if/else và switch/case; hiểu thứ tự xét nhánh, break/default, fall-through và khi nào dùng mỗi dạng rẽ nhánh.
  10. 10 Vòng lặp: for, while, do-while Viết while, for, do-while; theo dõi điều kiện, biến đếm, break/continue, vòng lặp vô tận và lỗi off-by-one.
  11. 11 Hàm Tách chương trình thành hàm: parameter/argument, return/void, prototype, scope và pass by value.
  12. 12 Đệ quy & call stack Viết hàm đệ quy có base case và bước thu nhỏ; quan sát call stack, thứ tự in khi gọi trước/sau và nguy cơ stack overflow.
  13. 13 Mảng & chuỗi Khai báo mảng, duyệt bằng for, hiểu chỉ số 0..n-1; chuỗi là mảng char kết thúc bằng \0 và các lỗi vượt biên.
  14. 14 Struct & kiểu tự đặt tên Dùng struct để gom nhiều trường khác kiểu; truy cập bằng dấu chấm, truyền struct vào hàm, typedef và thay mảng song song bằng mảng struct.
  15. 15 Dự án cuối khoá: 3 app nhỏ Ghép mảng, vòng lặp, rẽ nhánh, hàm main và scanf/printf thành 3 app terminal: Todo, Chi tiêu, Bình chọn; dữ liệu lưu trong RAM.

Sắp bắt tay vào dự án thật?

Tên miền, VPS, hosting để đưa sản phẩm lên mạng - chọn ở trang Ưu đãi. Mua qua link là góp thêm “cá” nuôi Mèo, bạn không tốn thêm.

Ưu đãi & công cụ →