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 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. Cơ bản · 14′
- 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. Cơ bản · 16′
- 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 }. Cơ bản · 16′
- 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. Cơ bản · 20′
- 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ệ Cơ bản · 22′
- 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. Cơ bản · 18′
- 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 ==. Cơ bản · 19′
- 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. Vận dụng · 20′
- 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. Vận dụng · 20′
- 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. Vận dụng · 22′
- 11 Hàm Tách chương trình thành hàm: parameter/argument, return/void, prototype, scope và pass by value. Vận dụng · 22′
- 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. Vận dụng · 22′
- 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. Vận dụng · 22′
- 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. Vận dụng · 22′
- 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. Vận dụng · 28′
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.