Ưu đãi trong tuần: Nhập mã UD50 giảm 50k cho đơn từ 300k!
Trang chủ
Menu

C Programming Step by Step - Complete Tutorial For Beginners

Lập trình C từng bước - Hướng dẫn toàn diện cho người mới bắt đầu

Lập trình C từng bước - Hướng dẫn toàn diện cho người mới bắt đầu

Hướng dẫn ngôn ngữ C từ cơ bản với toán tử, vòng lặp, mảng, con trỏ, hàm, tham số, chuỗi, đệ quy, cấu trúc, tệp tin.

4.5
(3,351 đánh giá)
18,912 học viên
Giảng viên
Shibaji Paul
Phụ đề Việt chất lượng cao Phụ đề tiếng Anh Bán chạy Đánh giá cao
50.000đ 499.000đ -90%
✓ Xem giỏ hàng và thanh toán
Bao gồm phụ đề tiếng Việt, tiếng Anh
17.5 giờ video
156 bài giảng
29 bài quiz
14 bài coding
Truy cập vĩnh viễn
Học trên mọi thiết bị
Cập nhật: 30/05/2026

Bạn sẽ học được gì

Câu lệnh if else, vòng lặp - while, for và do while với nhiều ví dụ minh họa.
Mảng - 1 chiều và 2 chiều, tại sao cần dùng và cách sử dụng hiệu quả.
Chuỗi trong C - Mảng ký tự kết thúc bằng NULL.
Viết hàm, truyền tham số cho hàm. Trả về giá trị từ hàm.
Lớp lưu trữ - auto, static, extern và register
Con trỏ - hiểu sâu bản chất.
Mối quan hệ giữa mảng và con trỏ.
Mảng các con trỏ.
Tham số dòng lệnh
Đọc và ghi tệp tin, cả văn bản và nhị phân.
Đệ quy - cách hoạt động, thảo luận sâu về đệ quy vs lặp - Tháp Hà Nội
Các tiện ích xử lý chuỗi - sprintf, strtok và nhiều hàm khác
Con trỏ hàm
Toán tử bitwise trong lập trình C.

Yêu cầu

Không yêu cầu kiến thức trước, khóa học dành cho người mới hoàn toàn.

Đối tượng phù hợp

Khóa học này bao quát từ A-Z ngôn ngữ lập trình C, vì vậy bất kỳ ai cũng có thể tham gia, kể cả người mới bắt đầu hoàn toàn cũng không gặp khó khăn
Sinh viên đại học có môn lập trình C trong chương trình học
Nếu bạn đã có kinh nghiệm lập trình C hoặc ngôn ngữ khác, khóa học này sẽ củng cố nền tảng của bạn

Nội dung khóa học

20 phần • 152 bài giảng
1 Giới thiệu
2 Lưu ý về độ phân giải màn hình.
3 Bảng điều khiển khóa học, mục hỏi đáp, hướng dẫn cơ bản để theo học.
4 Cách thực hiện bài tập lập trình, vui lòng xem.
1 Ghi chú ngắn về IDE và Trình biên dịch
2 Tải, cài đặt và sử dụng Xcode (trên OSX) để viết chương trình C
3 Biên dịch bằng Terminal Mac và viết chương trình trên sublime text.
4 Sử dụng Visual Studio Code trên MacOS cho chương trình C.
5 Cách tải và cài đặt Codeblocks cho Mac
6 Tải, cài đặt và sử dụng Code::Blocks cho chương trình C.
7 Biên dịch từ Windows terminal dùng gcc
8 Sử dụng Visual Studio Code cho Windows.
9 Tải, cài đặt và sử dụng Microsoft Visual Studio 2019 Community edition.
10 Sử dụng Netbeans trong Mac
1 Hiểu chương trình đầu tiên.
2 Biến và kiểu dữ liệu trong lập trình C.
3 In nội dung biến dùng printf
4 Đọc dữ liệu từ bàn phím vào biến dùng scanf.
5 Khởi tạo biến, khởi tạo hệ bát phân và thập lục phân.
6 Toán tử số học trong C
7 Làm việc với ký tự
8 Vấn đề xóa bộ đệm khi nhập ký tự
9 Ý tưởng về ép kiểu
10 Bí mật của printf
11 Bí mật của scanf
12 Toán tử bị lãng quên nhất - Toán tử gán
13 Toán tử quan hệ để so sánh giá trị
14 Bạn có dám nhận thử thách này?
15 Giới thiệu toán tử logic, phép toán AND
16 Phép toán logic OR
17 Phép toán logic NOT
18 Toán tử tăng/giảm một ngôi
19 Tính chất rút ngắn (short circuit) của phép toán AND và OR
1 "Tồn tại hay không tồn tại" - cách quyết định dùng if-else
2 Tiến xa hơn, cấu trúc if-else-if
3 Ví dụ lập trình khác về if-else-if, sẽ giúp bạn hiểu thêm.
4 Bạn chắc mình trả lời được không? Hãy xem thử.
5 Ops! Chưa xong đâu, đây là thêm thông tin về if-else
6 Làm cho thông minh hơn với toán tử điều kiện, toán tử ba ngôi duy nhất trong C
7 if-else lồng nhau, kiểm tra năm nhuận.
8 Hiểu switch-case
1 Giới thiệu vòng lặp, vòng lặp while.
2 Vòng lặp while - Ví dụ lập trình 1
3 Vòng lặp while - Ví dụ lập trình 2
4 Thử thách về vòng lặp while, đây là bài "dự đoán kết quả" thú vị về while.
5 Tất tần tật về vòng lặp for thông minh
6 Thực hiện trước rồi kiểm tra sau, vòng lặp do-while
7 Cách thoát vòng lặp sớm: dùng từ khóa 'break'
8 Tiện ích vòng lặp khác: từ khóa 'continue'
9 Tạo số ngẫu nhiên, hàm rand()
1 Giới thiệu mảng một chiều
2 Khởi tạo mảng một chiều
3 Cấp phát mảng động, ví dụ nhập xuất với mảng
4 Ví dụ lập trình dùng mảng 1 chiều
5 Giới thiệu mảng hai chiều
6 Ví dụ lập trình mảng 2 chiều
1 Giới thiệu chuỗi, dùng mảng ký tự để lưu chuỗi
2 Cách nhập chuỗi từ bàn phím
3 Tìm độ dài chuỗi
4 Tìm kiếm và đếm ký tự mục tiêu trong chuỗi
5 Thư viện hàm xử lý chuỗi, string.h
1 Giới thiệu về hàm
2 Nguyên mẫu hoặc chữ ký hàm, khai báo hàm.
3 Tạo thư viện riêng, chia sẻ hàm cho người khác.
4 Ví dụ hàm 1, hàm kiểm tra số nguyên tố
5 Thêm ví dụ về hàm
6 Ví dụ khác, hàm kiểm tra số Armstrong
1 Trò chơi Kéo-Búa-Bao - Phần 1
2 Trò chơi Kéo-Búa-Bao - Phần 2
1 Giới thiệu đệ quy.
2 Tiếp tục giới thiệu...
3 Đệ quy vs Lặp, cuộc tranh luận lớn, Khái niệm đệ quy đuôi (TAIL recursion).
4 Tranh luận tiếp... khi nào thì lặp được ưu tiên.
5 Vẫn đang tranh luận... khi nào thì đệ quy được ưu tiên.
6 Tháp Hà Nội, ví dụ kinh điển về đệ quy.
7 Triển khai Tháp Hà Nội
8 Ví dụ khác, số Fibonacci.
1 Giới thiệu lớp lưu trữ, lớp auto
2 Lớp lưu trữ: static
3 Lớp lưu trữ: extern
4 Lớp lưu trữ: register
1 Khái niệm bộ nhớ stack và heap
2 Giới thiệu con trỏ
3 Tiếp tục giới thiệu con trỏ...
4 Tiếp tục giới thiệu con trỏ...
5 Số học địa chỉ
6 Thêm về con trỏ
7 Cách và khi nào dùng con trỏ trong chương trình C
8 Thêm ví dụ lập trình
9 Mối quan hệ giữa mảng một chiều và con trỏ
10 Truyền mảng một chiều vào hàm
11 Thêm ví dụ về truyền mảng một chiều vào hàm
12 Mô phỏng thuộc địa 8 tế bào.
13 Ví dụ khác - Truyền chuỗi (mảng ký tự) vào hàm
14 Dùng từ khóa const với con trỏ
15 Thêm chút keo dính
16 Con trỏ void là con trỏ tổng quát
17 Cấp phát bộ nhớ động - hàm malloc
18 Cấp phát bộ nhớ động - hàm calloc
19 Cấp phát bộ nhớ động - hàm realloc
20 Tính chất bất biến của chuỗi ký tự
21 Mảng con trỏ - phần 1
22 Mảng con trỏ - phần 2 (Mô phỏng mảng 2D động dùng mảng con trỏ)
1 Giới thiệu kiểu tự định nghĩa, từ khóa struct
2 Từ khóa typedef, tạo bí danh cho kiểu
3 Con trỏ tới đối tượng struct
4 Viết hành vi (hàm) cho kiểu struct - phần 1
5 Viết hành vi (hàm) cho kiểu struct - phần 2
6 Dùng kiểu struct bên trong kiểu struct khác
7 Khai báo hằng số liệt kê, từ khóa enum
8 Chỉ một tại một thời điểm trong nhóm, cách dùng từ khóa enum
1 Cách truyền số lượng đối số thay đổi vào hàm.
2 Truyền đối số thay đổi với kiểu khác nhau
1 Tham số dòng lệnh, tham số cho hàm main
2 Tham số dòng lệnh - thêm ví dụ
3 Truyền tham số cmd line trong Netbeans
4 Cách truyền tham số dòng lệnh trong Codeblocks
5 Lấy thông tin môi trường, tham số môi trường trong main
1 Giới thiệu xử lý tệp, ghi ký tự vào tệp văn bản dùng fputc()
2 Đọc nội dung tệp văn bản từng ký tự dùng fgetc().
3 Đọc một dòng từ tệp văn bản vào mảng ký tự dùng hàm fgets
4 Đọc dữ liệu có định dạng từ tệp văn bản dùng hàm fscanf
5 Ghi dữ liệu có định dạng vào tệp văn bản dùng hàm fprintf
6 Đọc ghi dữ liệu định dạng - ví dụ khác
7 Ghi ở chế độ nhị phân - hàm fwrite
8 Đọc ở chế độ nhị phân - hàm fread
9 Di chuyển con trỏ tệp đến vị trí bất kỳ dùng fseek
10 Tính số bản ghi trong tệp nhị phân dùng ftell
11 Chương trình sao chép tệp bất kỳ - Giới thiệu
12 Hãy cùng phát triển chương trình sao chép tệp từng bước.
1 Giới thiệu toán tử bitwise
2 Toán tử dịch trái bitwise
3 Toán tử dịch phải bitwise
4 Toán tử AND bitwise - cách kiểm tra một bit.
5 Đếm bit được set - Dùng bitwise AND và dịch trái.
6 In số nguyên có dấu như nguyên bản.
7 Phép toán OR bitwise - Cách set một bit chưa được set?
8 Phép toán XOR bitwise.
9 Bù bitwise - đảo ngược mọi bit.
1 sprintf và snprintf - Ghi chuỗi định dạng vào mảng ký tự
2 Hàm sscanf - cách quét dữ liệu định dạng từ chuỗi
3 strtok - công cụ tuyệt vời để trích xuất thông tin từ chuỗi phân cách bởi ký tự phân tách
4 memset - học cách khởi tạo khối bộ nhớ với một ký tự dùng memset
5 memcpy - sao chép từ khối bộ nhớ này sang khối khác từng byte
6 Hàm clock để đếm số nhịp đồng hồ và đo thời gian trôi qua.
1 Thuật toán Sắp xếp nổi bọt
2 Triển khai Sắp xếp nổi bọt bằng C
3 Cải tiến Sắp xếp nổi bọt, cách thoát vòng lặp sớm khi đã sắp xếp xong.
4 Cách dùng hàm qsort của thư viện để sắp xếp mảng.
1 Giới thiệu con trỏ hàm
2 Học cách khai báo con trỏ hàm.
3 Con trỏ hàm trong hành động - Chương trình sử dụng con trỏ hàm

Giới thiệu khóa học

I have been teaching this course to the undergraduate engineering students for last 15 years in class room. This course is well designed and covered almost all the topics that one should know while learning C language. Will not only help the student to build a solid foundation on the topic but will boost their confidence to face technical interviews boldly.

The course contents are mostly video lectures. I would encourage absolute beginners to follow the lectures strictly in chronological manners, please start from the very first video and go to the next one only if you are done with the previous. However, though not recommended, but students with some previous knowledge could jump lectures if they are confident.

The course is structured basically for the new programmers who may not have any previous experience with any programming language. From the very basic to advanced topics. Simple program to complex one in step-by-step.

One should take this course to build a career as a programmer. Programming in C has been considered as foundation for any programming language. If one is confident with C, then can start learning any other language like PHP, C++ or Java.

Khóa học liên quan

Khám phá thêm các khoá học cùng chủ đề

Hiển thị tất cả khoá học Beginner Programming
Hiển thị tất cả khoá học C Language
Hiển thị tất cả khoá học Programming Languages
Hiển thị tất cả khoá học Software Development
Zalo
Tôi có thể tư vấn khoá học cho bạn 😊