Menu
CoddyTech
Phổ biếnHành trình

Học lập trình C

Khóa học C online tương tác miễn phí. Bạn viết C trong mọi bài học, có gợi ý AI khi chương trình bị segfault, và nhận giấy chứng nhận miễn phí khi học xong.

165,755+ người học đã tham gia

187 bài học180 thử thách1,042 câu hỏi trắc nghiệm

  • Phù hợp cho người mới
  • sparkles iconTrợ giúp lập trình bằng AI
  • hint iconBài học tương tác thực hành
  • volume On iconCó thuyết minh âm thanh cho mọi bài học
  • quiz iconBài trắc nghiệm để kiểm tra kiến thức
  • certificate iconGiấy chứng nhận hoàn thành miễn phí

Đề cương

3 phần3 dự án187 bài học180 thử thách1,042 câu hỏi trắc nghiệm
  1. Bắt đầu phầnBắt đầuMở rộngThu gọnXây dựng nền tảng vững chắc với các khái niệm thiết yếu và kỹ năng cơ bản.

    Giới thiệu

    4 bài học326

    Biến

    11 bài học1485

    Toán tử

    9 bài học1161

    Luồng điều khiển

    7 bài học944

    Đầu vào và đầu ra

    5 bài học626

    Vòng lặp

    9 bài học1053

    Hàm

    7 bài học1039

    Mảng

    8 bài học1247

    Thử thách cuối cùng

    3 bài học3
  2. Bắt đầu phầnBắt đầuMở rộngThu gọnNắm vững C nâng cao, tập trung vào cấu trúc dữ liệu và điều khiển luồng. Học cách làm việc với mảng phức tạp, các tập hợp, xử lý lỗi và quản lý thời gian.

    Nền tảng về con trỏ

    6 bài học540

    Con trỏ và mảng

    5 bài học531

    Mảng ký tự và chuỗi

    8 bài học858

    Dự án: Công cụ xử lý văn bản đơn giản

    5 bài học5

    Con trỏ và hàm

    6 bài học641

    Quản lý bộ nhớ

    7 bài học652

    Cấu trúc (struct)

    6 bài học540

    Cấu trúc và con trỏ

    6 bài học643

    Dự án: Nhập thông tin liên hệ đơn giản

    5 bài học5

    Enum và typedef

    6 bài học640

    Thử thách ôn tập cuối

    3 bài học3
  3. Bắt đầu phầnBắt đầuMở rộngThu gọnTìm hiểu cách tổ chức code bằng lớp, đối tượng và các cấu trúc có thể tái sử dụng.

    Kiến thức cơ bản về lập trình mô-đun

    5 bài học733

    Đối tượng và phương thức

    6 bài học942

    Vòng đời đối tượng

    5 bài học533

    Tính đóng gói

    5 bài học435

    Dự án: Tài khoản ngân hàng đơn giản

    6 bài học6

    Kế thừa bằng cách kết hợp

    5 bài học531

    Con trỏ hàm

    5 bài học534

    Đa hình

    6 bài học641

    Dự án: Trình vẽ hình

    5 bài học5

    Bộ chứa tổng quát

    5 bài học534

    Các mẫu thiết kế trong C

    4 bài học425

    Thử thách cuối cùng

    4 bài học48

Khóa học C

Khóa học C thực hành, bắt đầu miễn phí ngay trên trình duyệt.

Thử thách cho người mới bắt đầu: luyện tập các khái niệm cơ bản

Phổ biến

Hãy thử sức với kiến thức lập trình cơ bản và giải các thử thách lập trình này bằng ngôn ngữ bạn muốn. Chúc bạn viết code vui vẻ!

certificate icon

Chứng nhận khi hoàn thành

  • 20
  • 20

Bài tập lập trình

Phổ biến

Thử sức với kỹ năng giải quyết vấn đề lập trình qua các bài tập có nhiều mức độ khó trong khóa học này. Khóa học dành cho bạn đã có kiến thức cơ bản về cú pháp của một ngôn ngữ lập trình bất kỳ.

certificate icon

Chứng nhận khi hoàn thành

  • 32
  • 31

Ngăn xếp: chuỗi cấu trúc dữ liệu số 1

Trong khóa học này, bạn sẽ tìm hiểu về cấu trúc dữ liệu ngăn xếp (stack), tự tạo một ngăn xếp từ đầu bằng ngôn ngữ bạn thích và luyện giải các thử thách lập trình với ngăn xếp!

Cấu trúc dữ liệu
  • 13
  • 11
  • 1

Cây AVL, chuỗi cấu trúc dữ liệu #10

Trong khóa học này, bạn sẽ tìm hiểu về cấu trúc dữ liệu cây AVL, tự xây dựng cây tìm kiếm nhị phân tự cân bằng từ đầu bằng ngôn ngữ bạn muốn, rồi luyện tập các thử thách code với cây này!

Cấu trúc dữ liệu
certificate icon

Chứng nhận khi hoàn thành

  • 16
  • 14
  • 1

Danh sách liên kết, loạt bài về cấu trúc dữ liệu #5

Trong khóa học này, bạn sẽ tìm hiểu về cấu trúc dữ liệu danh sách liên kết, tự tạo một danh sách liên kết bằng ngôn ngữ lập trình bạn chọn và luyện tập giải các thử thách code với cấu trúc này!

Cấu trúc dữ liệu
certificate icon

Chứng nhận khi hoàn thành

  • 14
  • 12
  • 1

Cây nhị phân, chuỗi cấu trúc dữ liệu #3

Trong khóa học này, bạn sẽ tìm hiểu về cấu trúc dữ liệu cây nhị phân (Binary Tree), tự tạo một cây nhị phân từ đầu bằng ngôn ngữ bạn chọn và luyện tập các thử thách lập trình với cấu trúc này!

Cấu trúc dữ liệu
  • 13
  • 11
  • 1
Bạn nhận được gì
Mọi thứ bạn sẽ dùng để học lập trình

Học qua thực hành

Viết code thật, truy vấn cơ sở dữ liệu, xây dựng trang web và làm chủ prompt AI. Các bài học tương tác bao quát mọi kỹ năng mà lập trình viên hiện đại cần.

playground.js
Trình chỉnh sửa code
1const greeting = "Hello, Coddy!"
2function sayHi(name) {
3    return greeting + " " + name
4}
5
bottombar Collapse icon
Test #1test Case Success icon
Test #2test Case Success icon
Test #3test Case Failure icon
Đầu vào
"Alex"
Đầu ra
"Hello, Coddy! Alex"

Xây dựng streak

Học đều đặn và nhìn tiến độ của bạn lớn dần! Theo dõi thói quen code mỗi ngày, bảo vệ streak bằng ngày đóng băng và nhận phần thưởng khi học mỗi ngày.

12 ngày streak

Quay lại ngày mai để giữ streak!

fire Filled icon
left icon

January 2026

right icon

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

21

22

23

24

25

26

27

28

29

30

product Double Or Nothing icon

Gấp đôi hoặc mất hết

Ngày 5/7

fire Freeze icon

Đóng băng streak

2 left

Code ở mọi nơi

Mang hành trình lập trình theo bên mình! Không cài đặt, không tải về: chỉ cần mở ra và bắt đầu code. Có trên iOS, Android và Web với đánh giá 4,9 sao.

Python
7Streak
250Điểm
5Năng lượng
Biến
journey Hex Done Base iconjourney Hex Done Shadow iconjourney Hex Done Top iconjourney Lesson Done icon
journey Path Right Done icon
journey Hex Done Base iconjourney Hex Done Shadow iconjourney Hex Done Top iconjourney Lesson Done icon
journey Path Left Done icon
journey Hex Active Base iconjourney Hex Active Shadow iconjourney Hex Active Top iconjourney Lesson Theory Challenge icon
Tiếp tục
journey Path Right icon
journey Hex Locked Base iconjourney Hex Locked Shadow iconjourney Hex Locked Top iconjourney Lesson Theory Challenge icon
journey Path Left icon
journey Hex Locked Base iconjourney Hex Locked Shadow iconjourney Hex Locked Top iconjourney Lesson All icon
Hành trình
Mục tiêu
Bảng xếp hạng
Hồ sơ
4.9
Ngôi saoNgôi saoNgôi saoNgôi saoNgôi sao
Đánh giá

Bạn không đơn độc

Thi đấu trên bảng xếp hạng toàn cầu, mời bạn bè để nhận phần thưởng và cùng nhau ăn mừng thành công. Học code cùng bạn bè vui hơn nhiều!

Giải đấu Challenger
Giải đấu ChallengerTop 7 được thăng hạng
leaderboard First icon1
avatar 1 icon
fire Filled icon
Alex7+ Days
2840
leaderboard Second icon2
avatar 2 icon
fire Filled icon
Jordan7+ Days
2650
leaderboard Third icon3
avatar 3 icon
fire Filled icon
Sam7+ Days
2420
4
avatar 4 icon
Casey
2180
5
avatar placeholder icon
fire Filled icon
Morgan7+ Days
1950
leaderboard Arrow Up iconVùng thăng hạngleaderboard Arrow Up icon

Mọi cách để học

Đọc, nghe, tự kiểm tra, hỏi AI hoặc tra cứu bất cứ điều gì bạn đã học. Mỗi bài học phù hợp với trình độ của bạn.

Giới thiệu về biến
Âm thanh

Biến là một vùng chứa có tên, lưu một giá trị mà bạn có thể dùng lại sau trong chương trình.

Trong Python, bạn tạo biến bằng cách viết tên, dấu bằng, rồi giá trị muốn lưu.

Giá trị có thể thay đổi theo thời gian. Gán lại tên đó chỉ đơn giản là trỏ nó tới một giá trị mới.

1xSarah

Nhận chứng nhận

Nhận chứng nhận cho mỗi khóa học bạn hoàn thành. Thêm vào hồ sơ LinkedIn và CV để cho nhà tuyển dụng thấy kỹ năng lập trình của bạn.

CoddyGiấy chứng nhận hoàn thành
Chứng nhận rằngNguyễn Văn Anđã hoàn thành xuất sắc
python iconPython cơ bản
Đã xác minh
NgàyTh1 2026
LinkedInThêm vào LinkedIn

Vì sao nên học C với Coddy

  • Viết và chạy code C thật ngay trong trình duyệt. Không cần cài GCC, không cần Makefile, không phải thiết lập bộ công cụ. Mỗi bài tập biên dịch chương trình C của bạn trên máy chủ và hiển thị đầu ra ngay lập tức.
  • C đúng như cách người ta thực sự dùng: con trỏ và tham chiếu, mảng, chuỗi, struct, cấp phát bộ nhớ động với malloc và free, đọc ghi tệp. Phần nền tảng C mà mọi lập trình viên hệ thống đều cần.
  • Gợi ý AI giúp bạn đọc hiểu và sửa lỗi biên dịch C cũng như segfault, để ngôn ngữ này trở nên dễ tiếp cận chứ không khó hiểu ngay từ ngày đầu.
  • Giấy chứng nhận lập trình C miễn phí khi bạn học xong khóa học. Một minh chứng đáng tin cho các vị trí về hệ thống, nhúng, hệ điều hành và game engine, nơi thành thạo C là yêu cầu bắt buộc.

Câu hỏi thường gặp về học C

C có khó học không?

C có ít tính năng hơn phần lớn ngôn ngữ hiện đại, nhưng buộc bạn đối mặt sớm với con trỏ và quản lý bộ nhớ thủ công, vì thế nó nổi tiếng là khó. Khóa học giới thiệu từng khái niệm một, kèm bài tập thực hành sau mỗi khái niệm, để những phần khó không dồn đến cùng một lúc.

Nên học C hay C++ trước?

Với lập trình nhúng, hệ điều hành hay hệ thống cấp thấp, hãy bắt đầu với C: nó nhỏ hơn và gần phần cứng hơn. Với phát triển ứng dụng, game engine hay hệ thống hiện đại, C++ là lựa chọn phổ biến hơn và cho bạn con đường nhẹ nhàng hơn qua lớp trước khi phải tự quản lý bộ nhớ.

Học lập trình C mất bao lâu?

C cơ bản, gồm biến, câu lệnh điều kiện, vòng lặp và hàm, mất từ hai đến bốn tuần luyện tập mỗi ngày. Để quen với con trỏ, struct và bộ nhớ động thường cần thêm từ một đến ba tháng. Thành thạo hẳn (code cấp hệ thống, tối ưu hiệu năng, codebase C lớn) là hành trình nhiều năm.

Có thể học lập trình C online miễn phí không?

Có. Khóa học C tương tác miễn phí, gồm đầy đủ bài học, bài tập code, bài trắc nghiệm và giấy chứng nhận hoàn thành. Trình biên dịch C chạy trên máy chủ, nên bạn không cần cài GCC, Clang hay IDE nào trên máy để bắt đầu viết C.

Có cần cài trình biên dịch C để học khóa này không?

Không. Mỗi bài tập C được biên dịch trong một môi trường cô lập (sandbox) và hiển thị đầu ra ngay cạnh code. Không có Makefile, không có IDE, không có bộ công cụ nào phải cấu hình.

Học xong khóa lập trình C có được cấp chứng nhận không?

Có. Hoàn thành khóa học lập trình C, bạn nhận giấy chứng nhận hoàn thành miễn phí để thêm vào CV hoặc chia sẻ trên LinkedIn, rất hữu ích bên cạnh các dự án lập trình hệ thống hay repository GitHub bạn đã làm.

Lộ trình học có khóa học này

Khóa học này là một bước trong một lộ trình dài hơn: nhiều khóa học theo thứ tự mà một người hướng dẫn sẽ dạy, mỗi khóa có chứng nhận miễn phí riêng.

Hình minh họa các ngôn ngữ lập trình của Coddy

Học C với Coddy

Bắt đầu