TỔNG QUAN HỌC THUẬT VÀ NỘI DUNG GIÁO TRÌNH KỸ THUẬT LẬP TRÌNH (MÃ MÔ ĐUN: MH13)


Tổng quan về giáo trình (250-300 từ)

Giáo trình Môn học: Kỹ thuật lập trình do Trường Cao đẳng Cộng đồng Đồng Tháp (Ủy ban Nhân dân Tỉnh Đồng Tháp) biên soạn và ban hành năm 2017 theo Quyết định của Hiệu trưởng, phục vụ đào tạo ngành Tin học văn phòng và Sửa chữa lắp ráp máy tính ở trình độ Trung cấp, đồng thời làm tài liệu tham khảo cho bậc Cao đẳng và Đại học.

Trong chương trình đào tạo, môn học mang mã số MH13, được xác định là mô đun kiến thức cơ sở bắt buộc, bố trí sau các môn học chung và trước các mô đun chuyên môn nghề. Mục tiêu học tập cốt lõi của giáo trình gồm:

  • Cung cấp hiểu biết về cú pháp, công dụng và nguyên lý hoạt động của các câu lệnh trong ngôn ngữ lập trình C.
  • Rèn luyện năng lực phân tích bài toán, xác định các nhiệm vụ xử lý dữ liệu của chương trình.
  • Phát triển kỹ năng thao tác trên môi trường biên dịch Turbo C / Borland C: soạn thảo mã nguồn, biên dịch, gỡ rối (debugging), bẫy lỗi và tra cứu hệ thống trợ giúp.
  • Xây dựng tư duy logic thuật toán, tạo nền tảng tiếp cận các chương trình máy tính hóa.

Về cấu trúc, giáo trình được thiết kế với thời lượng tổng cộng 90 giờ, bao gồm 24 giờ lý thuyết, 58 giờ thực hành và 8 giờ kiểm tra. Nội dung tiếp cận tuần tự theo mô hình từ phần cứng đến phần mềm: bắt đầu từ cách tổ chức kiểu dữ liệu, hệ thống nhị phân/bát phân/thập lục phân, cấu trúc điều khiển luồng, kỹ thuật chia mô đun bằng hàm, đến các cấu trúc dữ liệu mảng, chuỗi ký tự và cơ chế quản lý địa chỉ ô nhớ bằng biến con trỏ.


Nội dung kiến thức cốt lõi (500-600 từ)

Các chương/chủ đề chính

Mô đun MH13 phân chia tiến trình giảng dạy thành 7 bài học logic:

Bài 1: Tổng quan về ngôn ngữ lập trình C (MH13-01)
  1. Bài 1: Tổng quan về ngôn ngữ lập trình C (2 giờ lý thuyết): Giới thiệu lịch sử hình thành từ ngôn ngữ BCPL (Martin Richards) và ngôn ngữ B (Ken Thompson) đến ngôn ngữ C do Dennis Ritchie phát triển tại Bell Labs; các thao tác khởi động qua tập tin BC.EXE, đường dẫn BORLANDC\BIN\BC, lệnh thoát (Alt + X, menu F10 -> File -> Quit), và hệ thống phím chức năng trợ giúp (F1, Ctrl + F1, Shift + F1, Alt + F1).
  2. Bài 2: Các thành phần cơ bản (8 giờ: 2 LT, 6 TH): Trình bày bảng ký tự chuẩn, danh mục 32 từ khóa Turbo C, quy tắc đặt tên biến/hằng (tối đa 32 ký tự), 4 quy tắc viết mã nguồn, phạm vi khối lệnh { }, kiểu dữ liệu số/ký tự, định nghĩa hằng #define, toán tử số học/quan hệ, lệnh gán, ép kiểu tường minh (type), và các hàm nhập/xuất chuẩn printf, scanf, gets, fflush(stdin).
  3. Bài 3: Các lệnh cấu trúc (16 giờ: 4 LT, 10 TH, 2 KT): Khảo sát cấu trúc rẽ nhánh if...else, biểu thức điều kiện ? :, cấu trúc lựa chọn đa hướng switch...case...default, các câu lệnh điều khiển luồng break, continue, goto và nhãn, cùng các chu trình lặp for, while, do...while.
  4. Bài 4: Hàm (20 giờ: 8 LT, 10 TH, 2 KT): Khái niệm mô đun chương trình con, hàm main(), nguyên mẫu hàm (prototype), biến cục bộ, cơ chế truyền tham số theo giá trị (call by value) và truyền tham chiếu (call by reference) thông qua con trỏ, câu lệnh return, và giải thuật đệ quy.
  5. Bài 5: Mảng (13 giờ: 4 LT, 8 TH, 1 KT): Cấu trúc dữ liệu mảng một chiều, mảng hai chiều, thuật toán gán giá trị, sắp xếp phần tử và truyền mảng vào hàm.
  6. Bài 6: Chuỗi ký tự (13 giờ: 4 LT, 8 TH, 1 KT): Khai báo mảng ký tự kết thúc bằng ký tự null \0, nhập xuất chuỗi với định dạng %s, hàm gets(), và các thao tác xử lý chuỗi ký tự.
  7. Bài 7: Mảng và biến con trỏ (18 giờ: 4 LT, 12 TH, 2 KT): Bản chất vùng nhớ, toán tử lấy địa chỉ &, toán tử giải tham chiếu con trỏ *, mối tương quan giữa mảng và con trỏ, cùng kỹ thuật quản lý bộ nhớ.

Kiến thức nền tảng được xây dựng

  • Lý thuyết hệ thống và biểu diễn dữ liệu: Phân tích chi tiết bảng mã ASCII (nhóm điều khiển 0–31, nhóm văn bản 32–126, nhóm đồ họa 127–255); các hệ thống biểu diễn số nguyên dạng bát phân (bắt đầu bằng số 0) và thập lục phân (bắt đầu bằng 0x hoặc 0X); biểu diễn số phẩy động dấu chấm tĩnh và ký hiệu khoa học (%e, %E).
Kiểu dữ liệu Kích thước Phạm vi biểu diễn
char (signed) 1 byte -128 đến 127
unsigned char 1 byte 0 đến 255
int 2 byte -32.768 đến 32.767
unsigned int 2 byte 0 đến 65.535
long 4 byte -2.147.483.648 đến 2.147.483.647
unsigned long 4 byte 0 đến 4.294.967.295
float 4 byte $3.4 \times 10^{-38}$ đến $3.4 \times 10^{+38}$ (7–8 chữ số có nghĩa)
double 8 byte $1.7 \times 10^{-308}$ đến $1.7 \times 10^{+308}$ (15–16 chữ số có nghĩa)
long double 10 byte $3.1 \times 10^{-4932}$ đến $3.1 \times 10^{+4932}$ (17–18 chữ số có nghĩa)
  • Nguyên lý quản lý bộ nhớ: Cơ chế cấp phát vùng nhớ tự động (stack allocation) cho các biến cục bộ và tham số hình thức khi bắt đầu khối lệnh hoặc lời gọi hàm; cơ chế hủy vùng nhớ khi gặp câu lệnh return hoặc dấu đóng khối lệnh }.
  • Khung cấu trúc chương trình chuẩn: Mô hình tích hợp chỉ thị tiền xử lý thư viện chuẩn (#include <stdio.h>, #include <math.h>), định nghĩa hằng tiền xử lý (#define), khai báo nguyên mẫu hàm (function prototype) và điểm thực thi khởi đầu bắt buộc tại hàm main().

Kỹ năng phát triển

  • Kỹ năng kỹ thuật (Technical skills): Thao tác phím tắt trong môi trường Borland C (Ctrl + F9 để dịch và chạy mã nguồn, Alt + F5 để quan sát màn hình kết quả đầu ra, F9 để tạo tệp thực thi Make); kỹ thuật định dạng luồng dữ liệu vào/ra với các định dạng độ rộng %4d, %6f, %.2f, xử lý bộ đệm bàn phím bằng hàm fflush(stdin).
  • Kỹ năng phân tích thuật toán (Analytical skills): Xây dựng thuật toán giải các bài toán toán học và logic: biện luận phương trình bậc nhất $ax + b = 0$, phương trình bậc hai $ax^2 + bx + c = 0$ bằng biệt thức $\Delta = b^2 - 4ac$, thuật toán kiểm tra năm nhuận, kiểm tra số nguyên tố bằng cận $\sqrt{n}$, kiểm tra số chính phương bằng bình phương liên tiếp $i \times i == n$, và tính tổng các chữ số lẻ.
  • Năng lực thực hành nghề nghiệp (Practical competencies): Xây dựng các hàm tái sử dụng trong thư viện, thiết kế thuật toán xử lý mảng (đảo ngược dãy số, nhân hai ma trận $m \times n$ và $n \times p$, tính tích vô hướng hai vectơ), hoán vị dữ liệu thông qua con trỏ với hàm swap(int *u, int *v), và xử lý bài toán quy nạp bằng hàm đệ quy gtdq(int n).

Phương pháp giảng dạy và học tập (300-350 từ)

Giáo trình môn học Kỹ thuật lập trình áp dụng phương pháp tiếp cận thực hành định hướng năng lực nghề nghiệp. Cấu trúc chương trình dành hơn 64% tổng thời lượng (58 giờ thực hành trên tổng số 90 giờ) cho việc rèn luyện kỹ năng viết mã trực tiếp trên máy tính, đảm bảo người học nắm vững lý thuyết cú pháp thông qua việc lập trình giải quyết các bài toán cụ thể.

Hệ thống bài tập và nghiên cứu tình huống được xây dựng đa dạng:

  • Bài toán cấu trúc rẽ nhánh và lặp: Thuật toán xác định năm nhuận dựa trên logic chia hết cho 4, không chia hết cho 100 hoặc chia hết cho 400; thuật toán lặp xác định số nguyên tố với lệnh break ngắt vòng lặp sớm; thuật toán duyệt ma trận tính tổng và tìm phần tử cực đại dương có sử dụng lệnh continue.
  • Bài toán xử lý mảng và ma trận: Minh họa 3 kỹ thuật viết vòng lặp for để đảo ngược dãy số (sử dụng hai biến chỉ số chạy ngược chiều i và j); tính tích vô hướng của 2 vectơ bằng 3 cấu trúc lặp while khác nhau.
  • Bài toán hàm và con trỏ: Hoán vị giá trị giữa hai biến thực tế thông qua địa chỉ bộ nhớ sử dụng hàm swap(px, py) nhận đối số int *u, int *v; tính giai thừa $n!$ bằng cả phương pháp lặp tuần tự gt() và phương pháp đệ quy gtdq().

Phương pháp đánh giá kết quả học tập kết hợp giữa quá trình và định kỳ: 8 giờ kiểm tra được phân bổ trực tiếp vào các bài học cốt lõi (Bài 3: 2 giờ, Bài 4: 2 giờ, Bài 5: 1 giờ, Bài 6: 1 giờ, Bài 7: 2 giờ). Người học được đánh giá thông qua độ chính xác của thuật toán, tính hợp lệ của cú pháp khi biên dịch và khả năng chạy đúng các bộ kiểm thử dữ liệu.

Đối với việc tự học, giáo trình cung cấp hướng dẫn tra cứu qua hệ thống trợ giúp của Turbo C: nhấn F1 để mở màn hình trợ giúp chính, Ctrl + F1 để xem cú pháp và tham số của hàm tại vị trí con trỏ soạn thảo, Shift + F1 để mở danh mục hàm, và Alt + F1 để quay lại lịch sử trợ giúp. Cuối các chương đều có hệ thống bài tập thực hành kèm mã nguồn mẫu giải thích chi tiết logic từng dòng lệnh.


Điểm nổi bật và cập nhật (250-300 từ)

Nội dung giáo trình kế thừa và chuẩn hóa các nguyên lý lập trình cấu trúc từ tác phẩm kinh điển "Ngôn ngữ lập trình C" xuất bản năm 1978 của Dennis Ritchie và Brian Kernighan (nhóm tác giả phát triển ngôn ngữ C tại phòng thí nghiệm Bell). Tài liệu duy trì chuẩn mực về cú pháp và cấu trúc ngữ nghĩa của C tiêu chuẩn.

Giáo trình tích hợp hệ thống hướng dẫn môi trường lập trình Turbo C và Borland C cụ thể, chỉ rõ phương thức vận hành trên giao diện dòng lệnh DOS và hệ điều hành Windows:

  • Khởi động trực tiếp tệp thực thi bằng cú pháp: D:\BORLANDC\BIN\BC E:\BAITAP_BC\VIDU1.CPP để vừa mở IDE vừa nạp tệp mã nguồn.
  • Cung cấp bảng phím tắt biên dịch và điều khiển hoàn chỉnh: F10 (Menu), Alt + X (Thoát), Ctrl + F9 (Biên dịch và chạy), Alt + F5 (Xem kết quả), F9 (Make), Alt + F9 (Compile).

Tài liệu kết nối chặt chẽ giữa cú pháp ngôn ngữ với các ứng dụng thực tế trong công nghệ phần mềm:

  • Giải thích vai trò của C trong việc xây dựng hệ điều hành (UNIX), các trình biên dịch (Compilers), trình thông dịch (Interpreters), trình soạn thảo (Editors), và chương trình hợp ngữ (Assembly).
  • Phân tích khả năng độc lập phần cứng và tính linh hoạt của C trong các bài toán xử lý số, xử lý văn bản và cơ sở dữ liệu.
  • Cung cấp đầy đủ các bảng dữ liệu kỹ thuật: bảng 32 từ khóa Turbo C, bảng mã ký tự điều khiển (\a phát tiếng chuông, \b lùi con trỏ, \f sang trang, \n xuống dòng, \r về đầu dòng, \t tab cột, \ddd mã bát phân, \xHHH mã thập lục phân), và bảng định dạng nhập xuất (%d, %f, %c, %s, %e, %o, %x).

Đối tượng sử dụng giáo trình (200-250 từ)

Giáo trình được thiết kế cho các nhóm đối tượng cụ thể trong hệ thống giáo dục nghề nghiệp và đại học:

  • Học sinh, sinh viên trình độ Trung cấp: Phục vụ trực tiếp cho chương trình đào tạo ngành Tin học văn phòng và ngành Sửa chữa lắp ráp máy tính tại Trường Cao đẳng Cộng đồng Đồng Tháp. Giáo trình xây dựng nền tảng tư duy thuật toán và kỹ năng lập trình cấu trúc cơ sở.
  • Sinh viên bậc Cao đẳng và Đại học: Dùng làm tài liệu tham khảo bổ trợ cho các học phần Nhập môn lập trình, Kỹ thuật lập trình và Cơ sở dữ liệu trong khối ngành Công nghệ thông tin.
  • Kỹ thuật viên tin học: Cung cấp tài liệu tra cứu về cú pháp ngôn ngữ C, cơ chế quản lý bộ nhớ, con trỏ và các thuật toán xử lý dữ liệu cơ bản.

Về yêu cầu tiên quyết (Prerequisites), người học cần hoàn thành các môn học chung đầu khóa, có kỹ năng thao tác cơ bản trên hệ điều hành máy tính (quản lý thư mục, tập tin) và hiểu biết về toán học phổ thông (đại số, logic mệnh đề).

Đối với giảng viên, giáo trình là căn cứ để phân bổ chi tiết 90 giờ giảng dạy (24 giờ lý thuyết, 58 giờ thực hành và 8 giờ kiểm tra), đồng thời cung cấp khung bài tập mẫu và bài tập thực hành chuẩn cho các giờ học tại phòng máy. Đối với người tự học, tài liệu đóng vai trò là sách hướng dẫn độc lập nhờ các chỉ dẫn từng bước từ cài đặt môi trường, biên dịch mã nguồn đến kiểm thử chương trình.


Câu hỏi thường gặp (250-300 từ)

1. Giáo trình này phù hợp với đối tượng nào?

Giáo trình được biên soạn chính thức cho học sinh, sinh viên hệ Trung cấp ngành Tin học văn phòng, kỹ thuật viên sửa chữa lắp ráp máy tính, đồng thời là tài liệu tham khảo cho sinh viên hệ Cao đẳng, Đại học khối ngành kỹ thuật công nghệ.

2. Cần chuẩn bị những kiến thức nền tảng nào trước khi học?

Người học cần hoàn thành các môn học văn hóa chung, có kỹ năng sử dụng máy tính căn bản, hiểu biết về tệp/thư mục trên hệ điều hành và nắm được các kiến thức toán học cơ bản (phép chia lấy dư, phương trình bậc hai, hệ tọa độ, ma trận).

3. Giáo trình này có điểm gì khác biệt so với các tài liệu lập trình hiện đại?

Tài liệu tập trung đi sâu vào bản chất kỹ thuật phần cứng của ngôn ngữ C: phân tích chi tiết bảng mã ASCII, cách thức biểu diễn bit/byte của từng kiểu dữ liệu, các phép toán trên hệ bát phân/thập lục phân, cơ chế vùng nhớ cục bộ và kỹ thuật truyền địa chỉ ô nhớ bằng biến con trỏ trên môi trường Borland C / Turbo C.

4. Làm thế nào để tự học giáo trình này đạt hiệu quả tốt nhất?

Người học nên cài đặt môi trường Borland C / Turbo C, thực hiện tuần tự việc gõ mã nguồn các ví dụ mẫu, tận dụng hệ thống tra cứu trợ giúp tích hợp (F1, Ctrl + F1), và tự giải các bài tập thuật toán ở cuối mỗi bài học từ dễ đến khó (từ giải phương trình đến xử lý ma trận và con trỏ).

5. Giáo trình có cung cấp các công cụ và tài liệu hỗ trợ đi kèm không?

Giáo trình cung cấp đầy đủ bảng tổng hợp 32 từ khóa, danh mục phím tắt điều khiển IDE Borland C, bảng mã ký tự điều khiển escape sequence, cùng hệ thống mã nguồn mẫu hoàn chỉnh cho các bài tập thuật toán toán học, sắp xếp mảng và hàm đệ quy.


Kết luận (150 từ)

Giáo trình Môn học: Kỹ thuật lập trình (Mã mô đun: MH13) của Trường Cao đẳng Cộng đồng Đồng Tháp là tài liệu đào tạo có cấu trúc chặt chẽ, kết hợp hài hòa giữa lý thuyết cú pháp C quy chuẩn và kỹ năng thực hành biên dịch mã nguồn. Giáo trình xây dựng nền tảng tư duy thuật toán, giúp người học làm chủ các cấu trúc dữ liệu cơ bản và cơ chế quản lý bộ nhớ máy tính.

Lộ trình học tập đề xuất được phân chia theo 5 giai đoạn:

  1. Nắm vững cú pháp cơ bản, kiểu dữ liệu và nhập/xuất (Bài 1, 2).
  2. Làm chủ các cấu trúc rẽ nhánh và vòng lặp (Bài 3).
  3. Thiết kế chương trình dạng mô đun với hàm và thuật toán đệ quy (Bài 4).
  4. Tổ chức và xử lý dữ liệu với mảng và chuỗi ký tự (Bài 5, 6).
  5. Quản trị địa chỉ bộ nhớ và tham chiếu nâng cao bằng biến con trỏ (Bài 7).

Nguồn tài nguyên bổ trợ gồm môi trường biên dịch Borland C / Turbo C, các thư viện chuẩn C (stdio.h, math.h) và hệ thống bài tập thực hành thuật toán đi kèm trong tài liệu.