ỦY BAN NHÂN DÂN TỈNH TRÀ VINH
TRƯỜNG CAO ĐẲNG NGHỀ TRÀ VINH
GIÁO TRÌNH
MÔN HỌC: LẬP TRÌNH CĂN BẢN
NGÀNH, NGHỀ: CÔNG NGHỆ THÔNG TIN
TRÌNH ĐỘ: CAO ĐẲNG NGHỀ
( Ban hành kèm theo Quyết định số: …./QĐ-TCDN ngày ….tháng ….năm….
của Hiệu trưởng trường cao đẳng nghề Trà Vinh)
Trà Vinh, năm 2019
(Lưu hành nội bộ)
TUYÊN BỐ BẢN QUYỀN
Tài liệu này thuộc loại sách giáo trình nên các nguồn thông tin thể được phép
dùng nguyên bản hoặc trích dùng cho các mục đích về đào tạo và tham khảo.
Mọi mục đích khác mang tính lệch lạc hoặc sử dụng với mục đích kinh doanh
thiếu lành mạnh sẽ bị nghiêm cấm.
LỜI GIỚI THIỆU
Lập trình căn bản sử dụng ngôn ngữ C hiện ngôn ngữ lập trình được ưu
chuộng sử dụng rộng rãi do tính năng mạnh mẽ đa dạng của nó. Lập trình căn
bản môn học quan trọng trong các trường thuộc hệ thống giáo dục của nước ta hiện
nay. Mục đích của môn học này giúp người học bắt đầu làm quen với lập trình.
Giáo trình “Lập trình căn bản” được viết nhằm phục vụ cho đối tượng sinh
viên Cao đẳng thuộc khối ngành Công nghệ thông tin. Mục tiêu của giáo trình nhằm
cung cấp kiến thức bản về ngôn ngữ lập trình, đủ để giải quyết những bài toán lập
trình trong nhiều lĩnh vực khác nhau như: tính toán, kỹ thuật, quản lý, …
Giáo trình trình bày cho người học cách giải quyết vấn đề một cách đơn giản
làm thế nào để cài đặt bằng ngôn ngữ C. Cấu trúc của giáo trình gồ các chương sau:
Chương 1: Tổng quan về ngôn ngữ lập trình
Chương 2: Các thành phần cơ bản
Chương 3: Các lệnh cấu trúc
Chương 4: Hàm
Chương 5: Kiểu mảng
Chương 6: Chuỗi ký tự
Chương 7: Biến con trỏ
Trong quá trình biên soạn tác giả cũng đã tham khảo các giáo trình tài liệu
giảng dạy môn học Lập trình n bản của một số trường Cao đẳng, Đại học trong
ngoài nước để giáo trình đạt yêu cầu cao về nội dung và thích hợp đối với đối tượng là
sinh viên của trường Cao đẳng nghề Trà Vinh.
Xin chân thành cảm ơn các đồng nghiệp đã đóng góp rất quý báu. Khi viết tác giả
cũng đã cố gắng hết sức để hoàn thiện cuốn giáo trình này. Tuy nhiên, trong quá trình
biên soạn chắc chắn không tránh khỏi những thiếu sót, vậy rất mong được sự góp ý
của bạn đọc.
Trà Vinh, ngày …. tháng … năm 2019
Tham gia biên soạn
1. Chủ biên, tác giả: Phan Thanh Tú
2. Thành viên: Đào Ngọc Hải
3. Thành viên: Trần Văn Tuấn
1
MỤC LỤC
LỜI GIỚI THIỆU.......................................................................................................................1
CHƯƠNG 1: TỔNG QUAN VỀ NGÔN NGỮ LẬP TRÌNH....................................................6
1. Giới thiệu................................................................................................................................6
1.1. Lịch sử ra đời...................................................................................................................6
1.2. Chu trình triển khai chương trình C................................................................................6
1.3. Đặc điểm của ngôn ngữ lập trình C................................................................................7
2. Khởi động và thoát khỏi C......................................................................................................7
2.1. Cài đặt..............................................................................................................................7
2.2. Khởi động.........................................................................................................................7
2.2. Thoát khỏi visual C..........................................................................................................7
3. Cách sử dụng sự trợ giúp........................................................................................................8
3.1 Tạo mới 1 project..............................................................................................................8
CHƯƠNG 2: CÁC THÀNH PHẦN CƠ BẢN.........................................................................11
1. Hệ thống từ khóa và kí hiệu trong ngôn ngữ lập trình..........................................................11
1.1. Hệ thống ký hiệu............................................................................................................11
1.2. Từ khóa..........................................................................................................................12
2. Các kiểu dữ liệu................................................................................................................12
3. Các loại biến, cách khai báo, sử dụng...................................................................................12
3.1. Biến................................................................................................................................12
3.2. Hằng...........................................................................................................................13
3.3. Biểu thức........................................................................................................................13
4. Các toán tử........................................................................................................................14
4.1. Phép toán số học............................................................................................................14
4.2. Phép toán quan hệ.........................................................................................................14
4.3. Phép toán logic..............................................................................................................14
4.4. Phép toán tăng giảm......................................................................................................14
4.5. Toán tử điều kiện...........................................................................................................15
5. Lệnh và khối lệnh, lệnh gán, lệnh gộp..................................................................................15
5.1. Lệnh và khối lênh...........................................................................................................15
5.2. Lệnh gán........................................................................................................................16
5.3. Lệnh gộp........................................................................................................................17
6. Thực thi chương trình, nhập dữ liệu thô, nhận kết quả.........................................................18
CHƯƠNG 3: CÁC LỆNH CẤU TRÚC...................................................................................21
1. Khái niệm về lệnh cấu trúc...................................................................................................21
2. Các lệnh cấu trúc rẽ nhánh....................................................................................................21
2.1. Lệnh rẽ nhánh có điều kiện if.........................................................................................21
2.2. Lện cấu trúc lựa chọn (switch … case)..........................................................................35
2
2.3. Các lệnh lặp...................................................................................................................37
2.3.1. Cấu trúc lặp for.......................................................................................................37
2.3.3. Cấu trúc lặp while...................................................................................................41
2.3.2. Cấu trúc lặp do … whille........................................................................................43
2.4. Các lệnh đơn kết thúc vòng lặp......................................................................................45
2.4.1. Lệnh break..............................................................................................................45
2.4.2. Lệnh continue..........................................................................................................45
2.4.3. Lệnh goto................................................................................................................45
2. Tiến Sĩ Lê Mạnh Thạnh, Giáo trình môn lập trình C, nhà xuất bản giáo dục – Năm 2000.48
CHƯƠNG 4: HÀM...................................................................................................................49
1. Khái niệm..............................................................................................................................49
2. Hàm.......................................................................................................................................50
2.1. Định nghĩa hàm.............................................................................................................50
2.2. Sử dụng hàm..................................................................................................................51
2.3. Nguyên tắc hoạt động của hàm......................................................................................52
2.4. Cách truyền tham số......................................................................................................52
3. Sử dụng lệnh kết thúc hàm...................................................................................................55
CHƯƠNG 5: KIỂU MẢNG.....................................................................................................57
1. Trình bày khái niệm mảng trong ngôn ngữ lập trình............................................................57
2. Cú pháp khai báo mảng và các cách gán giá trị cho mảng...................................................57
3. Một số giải thuật sắp xếp trên mảng.....................................................................................59
3.1. Sắp xếp mảng tăng dần..................................................................................................59
3.2. Sắp xếp mảng giảm dần.................................................................................................60
CHƯƠNG 6: CHUỔI KÝ TỰ..................................................................................................63
1. Khái niệm chuỗi kí tự...........................................................................................................63
2. Cú pháp khai báo mảng và các cách gán giá trị cho mảng:..................................................63
2.1. Khai báo theo mảng.......................................................................................................63
2.2. Vừa khai báo vừa gán giá trị.........................................................................................63
2.3. Nhập chuỗi từ bàn phím.................................................................................................64
2.4. Xuất chuỗi ra màn hình.................................................................................................64
3. Các phép toán và hàm làm việc với chuỗi............................................................................64
3.1. Cộng chuỗi - Hàm strcat().............................................................................................64
3.2. Xác định độ dài chuỗi - Hàm strlen()...........................................................................65
3.3. Đổi một ký tự thường thành ký tự hoa - Hàm toupper()................................................66
3.4. Đổi chuỗi chữ thường thành chuỗi chữ hoa, hàm strupr()............................................66
3.5. Đổi chuỗi chữ hoa thành chuỗi chữ thường, hàm strlwr()............................................66
3.6. Các thao tác trên chuỗi ký tự.........................................................................................66
3.6.1. Sao chép chuỗi, hàm strcpy()..................................................................................66
3.6.2. Trích một phần chuỗi, hàm strchr()........................................................................67
3