Giáo Trình Lập Trình Căn Bản Phần 1 của Trần Thị Hoa

Tài liệu giảng dạy Lập trình căn bản phần 1 - trần thị hoa hệ thống hóa kiến thức từ cơ bản đến nâng cao ngành giai đoạn 2020-2025

Trường đại học

Học viện Kỹ thuật Mật mã

Chuyên ngành

Tin học Đại cương

Người đăng

Ẩn danh

Thể loại

giáo trình

2013

112
1
0

Phí lưu trữ

35 Point

Mục lục chi tiết

LỜI NÓI ĐẦU

1. CHƯƠNG 1: CÁC THÀNH PHẦN CƠ BẢN CỦA NGÔN NGỮ C

1.1. Giới thiệu ngôn ngữ C

1.2. Tập ký tự, từ khóa, tên gọi

1.3. Câu lệnh, khối lệnh, lời giải thích

1.4. Chỉ thị tiền biên dịch

1.5. Cấu trúc của một chương trình C

1.6. Một vài chương trình C đơn giản

1.7. Vận hành chương trình trên máy

1.8. Tạo tệp chương trình gốc

1.9. Dịch chương trình

1.10. Chạy chương trình

1.11. Bài tập cuối chương

2. CHƯƠNG 2: KIỂU DỮ LIỆU, HẰNG, BIẾN, MẢNG VÀ BIỂU THỨC

2.1. Kiểu dữ liệu

2.2. Các kiểu dữ liệu đơn giản thông dụng

2.3. Kiểu dữ liệu liệt kê

2.4. Toán tử sizeof

2.5. Định nghĩa kiểu dữ liệu mới

2.6. Khái niệm biểu thức

2.7. Chuyển đổi kiểu giá trị

2.8. Câu lệnh gán và Biểu thức gán

2.9. Biểu thức điều kiện

2.10. Thứ tự Ưu tiên trong phép toán

2.11. Bài tập cuối chương

3. CHƯƠNG 3: VÀO - RA DỮ LIỆU

3.1. Chuỗi điều khiển

3.2. Ký tự chuyển dạng

3.3. Danh sách đối

3.4. Giá trị của hàm printf

3.5. Hàm scanf

3.6. Dòng vào và trường vào

3.7. Dòng vào stdin và các hàm scanf, gets, getchar

3.8. Các hàm xuất ký tự puts, putchar

3.9. Các hàm vào ra trên màn hình, bàn phím

3.10. Hàm xóa màn hình

3.11. Hàm di chuyển con trỏ

3.12. Bài tập cuối chương

4. CHƯƠNG 4: CÁC CÂU LỆNH ĐIỀU KHIỂN

4.1. Các câu lệnh rẽ nhánh

4.2. Câu lệnh if

4.3. Câu lệnh switch

4.4. Nhãn và Câu lệnh goto

4.5. Các câu lệnh có cấu trúc lặp

4.6. Câu lệnh for

4.7. Câu lệnh while

4.8. Câu lệnh do…while

4.9. Câu lệnh break và câu lệnh continue

4.10. Câu lệnh break

4.11. Câu lệnh continue

4.12. Bài tập cuối chương

5. CHƯƠNG 5: CON TRỎ VÀ HÀM

5.1. Cách tổ chức hàm

5.2. Biến/mảng tự động

5.3. Biến/mảng ngoài

5.4. Cách truyền tham số khi gọi hàm

5.5. Hàm có đối con trỏ

5.6. Con trỏ và mảng một chiều

5.7. Con trỏ và mảng nhiều chiều

5.8. Hàm kiểu con trỏ

5.9. Con trỏ tới hàm (Con trỏ hàm)

5.10. Hàm có đối là con trỏ hàm

5.11. Hàm đệ quy

5.12. Bài tập cuối chương

6. CHƯƠNG 6: KIỂU CẤU TRÚC, KIỂU HỢP

6.1. Kiểu cấu trúc

6.2. Định nghĩa kiểu cấu trúc

6.3. Khai báo biến cấu trúc

6.4. Truy nhập tới các thành phần của cấu trúc

6.5. Sử dụng cấu trúc

6.6. Mảng cấu trúc

6.7. Khởi đầu cho một cấu trúc và phép gán cấu trúc

6.8. Định nghĩa kiểu hợp

6.9. Khai báo biến kiểu hợp

6.10. Cấu trúc tự trỏ và danh sách liên kết

6.11. Cấp phát bộ nhớ động

6.12. Các phép toán trên danh sách liên kết

6.13. Hàng đợi

6.14. Bài tập cuối chương

7. CHƯƠNG 7: THAO TÁC TRÊN CÁC TỆP TIN

7.1. Giới thiệu chung

7.2. Kiểu nhập xuất nhị phân và văn bản

7.3. Kiểu nhập xuất nhị phân

7.4. Kiểu nhập xuất văn bản

7.5. Các hàm xử lý tệp cấp 2

7.6. Các hàm dùng chung cho cả hai kiểu nhập xuất

7.7. Các hàm nhập xuất ký tự

7.8. Các hàm nhập xuất theo kiểu văn bản

7.9. Các hàm nhập xuất theo kiểu nhị phân

7.10. Bài tập cuối chương

PHỤ LỤC 1

PHỤ LỤC 2

PHỤ LỤC 3

TÀI LIỆU THAM KHẢO

Giáo Trình Lập Trình Căn Bản Phần 1 của Trần Thị Hoa là một tài liệu quý giá dành cho những ai mới bắt đầu tìm hiểu về lập trình. Tài liệu này cung cấp những kiến thức cơ bản về ngôn ngữ lập trình, giúp người đọc nắm vững các khái niệm và kỹ thuật lập trình cần thiết. Đặc biệt, giáo trình không chỉ dừng lại ở lý thuyết mà còn đi sâu vào thực hành, giúp người học có thể áp dụng ngay những gì đã học vào thực tế.

Để mở rộng thêm kiến thức của bạn, bạn có thể tham khảo Giáo trình ngôn ngữ lập trình C, nơi cung cấp hướng dẫn chi tiết về ngôn ngữ lập trình phổ biến này. Ngoài ra, Giáo trình lập trình căn bản C nghề kỹ thuật sửa chữa lắp ráp máy tính trình độ trung cấp cao đẳng cũng là một nguồn tài liệu hữu ích cho những ai muốn tìm hiểu sâu hơn về lập trình trong lĩnh vực sửa chữa và lắp ráp máy tính. Cuối cùng, bạn có thể tham khảo Giáo trình kỹ thuật lập trình nghề công nghệ thông tin trình độ cao đẳng 2 để có cái nhìn tổng quát hơn về các kỹ thuật lập trình trong ngành công nghệ thông tin. Những tài liệu này sẽ giúp bạn mở rộng kiến thức và kỹ năng lập trình của mình một cách hiệu quả.

Trích đoạn nội dung tài liệu

lOMoARcPSD|16991370 BAN CƠ YẾU CHÍNH PHỦ HỌC VIỆN KỸ THUẬT MẬT MÃ TH. TRẦN THỊ HOA GIÁO TRÌNH LẬP TRÌNH CĂN BẢN Hà Nội, 2013 Downloaded by nguyenphuong Phuong nguyen (Kimphuongrio@gmail.com) lOMoARcPSD|16991370 BAN CƠ YẾU CHÍNH PHỦ HỌC VIỆN KỸ THUẬT MẬT MÃ TH. TRẦN THỊ HOA GIÁO TRÌNH LẬP TRÌNH CĂN BẢN Hà Nội, 2013 Downloaded by nguyenphuong Phuong nguyen (Kimphuongrio@gmail.com) lOMoARcPSD|16991370 MỤC LỤC MỤC LỤC i DANH MỤC CÁC BẢNG vii DANH MỤC CÁC HÌNH viii LỜI NÓI ĐẦU ix CHƢƠNG 1: CÁC THÀNH PHẦN CƠ BẢN CỦA NGÔN NGỮ C 1 1. Giới thiệu ngôn ngữ C 1 1. Tập ký tự, từ khóa, tên gọi 2 1. Câu lệnh, khối lệnh, lời giải thích 3 1. Lời giải thích 4 1. Chỉ thị tiền biên dịch 5 1. Cấu trúc của một chƣơng trình C 6 1. Một vài chƣơng trình C đơn giản 7 1. Vận hành chƣơng trình trên máy 8 1. Tạo tệp chƣơng trình gốc 9 1. Dịch chƣơng trình 9 1. Chạy chƣơng trình 10 Bài tập cuối chƣơng 11 CHƢƠNG 2: KIỂU DỮ LIỆU, HẰNG, BIẾN, MẢNG VÀ BIỂU THỨC 12 2. Kiểu dữ liệu 12 i Downloaded by nguyenphuong Phuong nguyen (Kimphuongrio@gmail. Các kiểu dữ liệu đơn giản thông dụng 12 2. Kiểu dữ liệu liệt kê 13 2. Toán tử sizeof 19 2. Định nghĩa kiểu dữ liệu mới 20 2. Khái niệm biểu thức 20 2. Chuyển đổi kiểu giá trị 24 2. Câu lệnh gán và Biểu thức gán 25 2. Biểu thức điều kiện 25 2. Thứ tự ƣu tiên trong phép toán 26 Bài tập cuối chƣơng 28 CHƢƠNG 3: VÀO - RA DỮ LIỆU 29 3. Chuỗi điều khiển 29 3. Ký tự chuyển dạng 31 3. Danh sách đối 32 3. Giá trị của hàm printf 33 3. Hàm scanf 33 ii Downloaded by nguyenphuong Phuong nguyen (Kimphuongrio@gmail. Danh sách đối 34 3. Dòng vào và trƣờng vào 34 3. Chuỗi điều khiển 34 3. Ký tự chuyển dạng 35 3. Giá trị của hàm scanf 37 3. Dòng vào stdin và các hàm scanf, gets, getchar 37 3. Các hàm xuất ký tự puts, putchar 39 3. Các hàm vào ra trên màn hình, bàn phím 39 3. Hàm xóa màn hình 41 3. Hàm di chuyển con trỏ 41 Bài tập cuối chƣơng 42 CHƢƠNG 4: CÁC CÂU LỆNH ĐIỀU KHIỂN 44 4. Các câu lệnh rẽ nhánh 44 4. Câu lệnh if 44 4. Câu lệnh switch 48 4. Nhãn và Câu lệnh goto. 53 iii Downloaded by nguyenphuong Phuong nguyen (Kimphuongrio@gmail. Các câu lệnh có cấu trúc lặp 56 4. Câu lệnh for 56 4. Câu lệnh while 62 4. Câu lệnh do…while 65 4. Câu lệnh break và câu lệnh continue 68 4. Câu lệnh break 68 4. Câu lệnh continue 69 Bài tập cuối chƣơng 71 CHƢƠNG 5: CON TRỎ VÀ HÀM 74 5. Cách tổ chức hàm 77 5. Biến/mảng tự động 80 5. Biến/mảng ngoài 81 5. Cách truyền tham số khi gọi hàm 82 5. Hàm có đối con trỏ 84 5. Con trỏ và mảng một chiều 86 5. Con trỏ và mảng nhiều chiều 88 5. Hàm kiểu con trỏ 91 5. Con trỏ tới hàm (Con trỏ hàm) 92 5. Hàm có đối là con trỏ hàm 94 5. Hàm đệ quy 95 Bài tập cuối chƣơng 99 iv Downloaded by nguyenphuong Phuong nguyen (Kimphuongrio@gmail.com) lOMoARcPSD|16991370 CHƢƠNG 6: KIỂU CẤU TRÚC, KIỂU HỢP 101 6. Kiểu cấu trúc 101 6. Định nghĩa kiểu cấu trúc 101 6. Khai báo biến cấu trúc 103 6. Truy nhập tới các thành phần của cấu trúc 104 6. Sử dụng cấu trúc 105 6. Mảng cấu trúc 107 6. Khởi đầu cho một cấu trúc và phép gán cấu trúc 109 6. Định nghĩa kiểu hợp 110 6. Khai báo biến kiểu hợp 110 6. Cấu trúc tự trỏ và danh sách liên kết 114 6. Cấp phát bộ nhớ động 114 6. Cấu trúc tự trỏ và danh sách liên kết 114 6. Các phép toán trên danh sách liên kết 116 6. Hàng đợi 129 Bài tập cuối chƣơng 132 CHƢƠNG 7: THAO TÁC TRÊN CÁC TỆP TIN 134 7. Giới thiệu chung 134 7. Kiểu nhập xuất nhị phân và văn bản 135 7. Kiểu nhập xuất nhị phân 135 7. Kiểu nhập xuất văn bản 135 7. Các hàm xử lý tệp cấp 2 136 7. Các hàm dùng chung cho cả hai kiểu nhập xuất 136 v Downloaded by nguyenphuong Phuong nguyen (Kimphuongrio@gmail. Các hàm nhập xuất ký tự 139 7. Các hàm nhập xuất theo kiểu văn bản 141 7. Các hàm nhập xuất theo kiểu nhị phân 147 Bài tập cuối chƣơng 153 PHỤ LỤC 1 I-1 PHỤ LỤC 2 II-1 PHỤ LỤC 3 III-1 TÀI LIỆU THAM KHẢO 153 vi Downloaded by nguyenphuong Phuong nguyen (Kimphuongrio@gmail.com) lOMoARcPSD|16991370 DANH MỤC CÁC BẢNG Bảng 1. Danh sách từ khóa của ngôn ngữ C 2 Bảng 2. Các phép toán hai ngôi 21 Bảng 2. Các phép toán với bit 22 Bảng 2. Các phép toán so sánh 22 Bảng 2. Các phép toán logic 23 Bảng 2. Thứ tự ưu tiên của các phép toán 26 Bảng 3. Danh sách các ký tự chuyển dạng của hàm printf 32 Bảng 3. Danh sách ký tự chuyển dạng và kiểu đối của hàm scanf 35 Bảng 7. Các kiểu truy nhập tệp 136 vii Downloaded by nguyenphuong Phuong nguyen (Kimphuongrio@gmail.com) lOMoARcPSD|16991370 DANH MỤC CÁC HÌNH Hình 1. Màn hình soạn thảo của Turbo C 9 Hình 4. Sơ đồ khối của câu lệnh if dạng 1 (nhánh else nối tắt) và lệnh if dạng 2. Sơ đồ khối của câu lệnh switch…case 50 Hình 4. Sơ đồ khối của câu lệnh goto kết hợp với câu lệnh if 54 Hình 4. Sơ đồ khối của câu lệnh for 57 Hình 4. Sơ đồ khối của câu lệnh while 63 Hình 4. Sơ đồ khối của câu lệnh do… while 66 viii Downloaded by nguyenphuong Phuong nguyen (Kimphuongrio@gmail.com) lOMoARcPSD|16991370 LỜI NÓI ĐẦU Theo khung chƣơng trình của Bộ Giáo Dục và Đào Tạo, Lập trình căn bản là một phần quan trọng trong học phần Tin học Đại cƣơng thuộc các khối ngành Khoa học Tự nhiên, đặc biệt là ngành Công nghệ thông tin. Nhằm đáp ứng yêu cầu học tập của sinh viên bƣớc đầu làm quen với công việc lập trình, tác giả đã biên soạn Giáo Trình Lập trình căn bản nhằm giúp cho sinh viên có một tài liệu học tập, rèn luyện tốt khả năng lập trình, tạo nền tảng vững chắc cho các môn học tiếp theo trong chƣơng trình đào tạo kỹ sƣ Công nghệ thông tin. Giáo trình bao gồm những kiến thức từ đơn giản đến phức tạp. Nội dung của giáo trình đƣợc chia thành bảy chƣơng. Trong mỗi chƣơng đều có phần giới thiệu lý thuyết, phần bài tập mẫu và cuối cùng là phần bài tập tự giải để sinh viên tự mình kiểm tra những kiến thức và kinh nghiệm đã đƣợc học. Sau đây là nội dung chính của các chƣơng: - Chƣơng 1 ngoài việc giới thiệu các khái niệm cơ bản của ngôn ngữ lập trình C còn đƣa ra một số chƣơng trình C đơn giản và cách thực hiện chúng trên máy để giúp ngƣời đọc mau chóng tiếp cận với máy. - Chƣơng 2 trình bày về các kiểu dữ liệu, cách biểu diễn các giá trị dữ liệu và cách tổ chức (lƣu trữ) dữ liệu trong biến và mảng. Ngoài ra chƣơng này còn giới thiệu về biểu thức, về các cách xử lý dữ liệu đơn giản nhờ các phép toán, biểu thức và câu lệnh gán. - Chƣơng 3 trình bày về các hàm vào ra dữ liệu trên bàn phím và màn hình. - Chƣơng 4 trình bày về lớp toán tử rất quan trọng dùng để thể hiện các thuật toán, đó là toán tử rẽ nhánh if, toán tử lựa chọn switch, các toán tử tạo lập chu trình (vòng lặp) for, while, do – while và toán tử goto. - Chƣơng 5 trình bày cách tổ chức chƣơng trình thành các hàm, các quy tắc xây dựng và sử dụng hàm. Các vấn đề hay và khó ở đây là con trỏ, con trỏ hàm và kỹ thuật đệ quy. - Chƣơng 6 trình bày về một kiểu dữ liệu quan trọng là cấu trúc, cấu trúc tự trỏ và danh sách liên kết. ix Downloaded by nguyenphuong Phuong nguyen (Kimphuongrio@gmail.com) lOMoARcPSD|16991370 - Chƣơng 7 trình bày về các thao tác trên tệp nhƣ: tạo một tệp mới, ghi dữ liệu từ bộ nhớ lên tệp, đọc dữ liệu từ tệp vào bộ nhớ,… Khi viết, tác giả đã cố gắng để giáo trình đƣợc hoàn chỉnh, song chắc chắn không tránh khỏi thiếu xót, vì vậy rất mong nhận đƣợc sự đóng góp ý kiến của độc giả để giáo trình ngày càng hoàn thiện hơn. Tác giả cũng xin chân thành cảm ơn các đồng nghiệp ở Khoa Công nghệ Thông tin, Học viện Kỹ thuật Mật mã đã giúp đỡ, đóng góp ý kiến để hoàn chỉnh nội dung giáo trình này. Hà Nội, tháng 11, 2013 TÁC GIẢ x Downloaded by nguyenphuong Phuong nguyen (Kimphuongrio@gmail.com) lOMoARcPSD|16991370 CHƢƠNG 1: CÁC THÀNH PHẦN CƠ BẢN CỦA NGÔN NGỮ C Trong chƣơng này, tác giả sẽ giới thiệu những thành phần cơ bản của ngôn ngữ lập trình C (cũng nhƣ của bất kỳ ngôn ngữ lập trình nào khác) đó là: tập ký tự, từ khóa, tên,…Ngoài ra, để giúp bạn đọc mau chóng tiếp cận với máy, tác giả cũng giới thiệu một vài chƣơng trình đơn giản và cách vận hành chúng trên máy để có thể nhận đƣợc kết quả cuối cùng. Giới thiệu ngôn ngữ C Lập trình cấu trúc là phƣơng pháp tổ chức, phân chia chƣơng trình thành các hàm, thủ tục, chúng đƣợc dùng để xử lý dữ liệu nhƣng lại tách rời các cấu trúc dữ liệu. Thông qua các ngôn ngữ Foxpro, Pascal, C đa số những ngƣời làm Tin học đã khá quen biết với phƣơng pháp lập trình này. Vào đầu những năm 70 tại phòng thí nghiệm Bell đã phát triển ngôn ngữ C. C đƣợc sử dụng lần đầu trên một hệ thống cài đặt hệ điều hành UNIX. C có nguồn gốc từ ngôn ngữ BCPL do Martin Richards phát triển. BCPL sau đó đã đƣợc Ken Thompson phát triển thành ngôn ngữ B, đây là ngƣời khởi thủy ra C. Trong khi BCPL và B không hỗ trợ kiểu dữ liệu, thì C đã có nhiều kiểu dữ liệu khác nhau. Những kiểu dữ liệu chính gồm: kiểu ký tự (character), kiểu số nguyên (interger) và kiểu số thực (float). C đƣợc dùng để lập trình hệ thống. Một chƣơng trình hệ thống có ý nghĩa liên quan đến hệ điều hành của máy tính hay những tiện ích hỗ trợ nó. Hệ điều hành (OS), trình thông dịch (Interpreters), trình soạn thảo (Editors), chƣơng trình Hợp Ngữ (Assembly) là các chƣơng trình hệ thống. Hệ điều hành UNIX đƣợc phát triển dựa vào C. C đang đƣợc sử dụng rộng rãi bởi vì tính hiệu quả và linh hoạt. Trình biên dịch (compiler) C có sẵn cho hầu hết các máy tính. Mã lệnh viết bằng C trên máy này có thể đƣợc biên dịch và chạy trên máy khác chỉ cần thay đổi rất ít hoặc không thay đổi gì cả. Trình biên dịch C dịch nhanh và cho ra mã đối tƣợng không lỗi.

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ