Tác giả phạm hồng thái bài giảng ngôn ngữ LẬp trình c/C++



tải về 1.98 Mb.
trang1/55
Chuyển đổi dữ liệu07.07.2016
Kích1.98 Mb.
  1   2   3   4   5   6   7   8   9   ...   55
(Build CHM file by Xuan Huy A10 07-10 Bac Dong Quan)

ĐẠI HỌC QUỐC GIA HÀ NỘI

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ

Khoa Công nghệ Thông tin

Tác giả

PHẠM HỒNG THÁI

Bài giảng

NGÔN NGỮ LẬP TRÌNH C/C++

Hà Nội – 2003

LỜI NÓI ĐẦU

Ngôn ngữ lập trình (NNLT) C/C++ là một trong những ngôn ngữ lập trình hướng đối tượng mạnh và phổ biến hiện nay do tính mềm dẻo và đa năng của nó. Không chỉ các ứng dụng được viết trên C/C++ mà cả những chương trình hệ thống lớn đều được viết hầu hết trên C/C++. C++ là ngôn ngữ lập trình hướng đối tượng được phát triển trên nền tảng của C, không những khắc phục một số nhược điểm của ngôn ngữ C mà quan trọng hơn, C++ cung cấp cho người sử dụng (NSD) một phương tiện lập trình theo kỹ thuật mới: lập trình hướng đối tượng. Đây là kỹ thuật lập trình được sử dụng hầu hết trong các ngôn ngữ mạnh hiện nay, đặc biệt là các ngôn ngữ hoạt động trong môi truờng Windows như Microsoft Access, Visual Basic, Visual Foxpro …

Hiện nay NNLT C/C++ đã được đưa vào giảng dạy trong hầu hết các trường Đại học, Cao đẳng để thay thế một số NNLT đã cũ như FORTRAN, Pascal … Tập bài giảng này được viết ra với mục đích đó, trang bị kiến thức và kỹ năng thực hành cho sinh viên bắt đầu học vào NNLT C/C++ tại Khoa Công nghệ, Đại học Quốc gia Hà Nội. Để phù hợp với chương trình, tập bài giảng này chỉ đề cập một phần nhỏ đến kỹ thuật lập trình hướng đối tượng trong C++, đó là các kỹ thuật đóng gói dữ liệu, phương thức và định nghĩa mới các toán tử. Tên gọi của tập bài giảng này nói lên điều đó, có nghĩa nội dung của bài giảng thực chất là NNLT C được mở rộng với một số đặc điểm mới của C++. Về kỹ thuật lập trình hướng đối tượng (trong C++) sẽ được trang bị bởi một giáo trình khác. Tuy nhiên để ngắn gọn, trong tập bài giảng này tên gọi C/C++ sẽ được chúng tôi thay bằng C++.

Nội dung tập bài giảng này gồm 8 chương. Phần đầu gồm các chương từ 1 đến 6 chủ yếu trình bày về NNLT C++ trên nền tảng của kỹ thuật lập trình cấu trúc. Các chương còn lại (chương 7 và 8) sẽ trình bày các cấu trúc cơ bản trong C++ đó là kỹ thuật đóng gói (lớp và đối tượng) và định nghĩa phép toán mới cho lớp.

Tuy đã có nhiều cố gắng nhưng do thời gian và trình độ người viết có hạn nên chắc chắn không tránh khỏi sai sót, vì vậy rất mong nhận được sự góp ý của bạn đọc để bài giảng ngày càng một hoàn thiện hơn.

Tác giả.


TÀI LIỆU THAM KHẢO

B.W. Kerninghan and D.M. Ritchie. The C Programming Language. Prentice-Hall, 1978. Ngô Trung Việt (dịch). Ngôn ngữ lập trình C. Viện Tin học, Hà Nội 1990.

Peter Norton. Advanced C Programming. Nguyễn Việt Hải (dịch). Lập trình C nâng cao. Nhà xuất bản Giao thông vận tải. Hà Nội, 1995.

Phạm Văn Ất. Kỹ thuật lập trình C. Cơ sở và nâng cao. Nhà xuất bản Khoa học và kỹ thuật. Hà Nội, 1996.

Phạm Văn Ất. C++ và lập trình hướng đối tượng. Nhà xuất bản Khoa học và kỹ thuật. Hà Nội, 2000.

Scott Robert Ladd. Nguyễn Hùng (dịch). C++ Kỹ thuật và ứng dụng. Công ty cổ phần tư vấn và dịch vụ KHKT - SCITEC, 1992.



Jan Skansholm. C++ From the Beginning. Addison-Wesley, 1997.

MỤC LỤC
Chương 1. CÁC KHÁI NIỆM CƠ BẢN CỦA C++

CÁC YẾU TỐ CƠ BẢN 1

  1. Bảng ký tự của C++ 1

  2. Từ khoá 2

  3. Tên gọi 2

  4. Chú thích trong chương trình 3

MÔI TRƯỜNG LÀM VIỆC CỦA C++ 3

  1. Khởi động - Thoát khỏi C++ 3

  1. Giao diện và cửa sổ soạn thảo 4

  2. Cấu trúc một chương trình trong C++ 7

CÁC BƯỚC ĐỂ TẠO VÀ THỰC HIỆN MỘT CHƯƠNG TRÌNH 8

  1. Qui trình viết và thực hiện chương trình 8

  1. Soạn thảo tệp chương trình nguồn 8

  2. Dịch chương trình 9

  3. Chạy chương trình 9

VÀO/RA TRONG C++ 9

  1. Vào dữ liệu từ bàn phím 9

  1. In dữ liệu ra màn hình 10

  2. Định dạng thông tin cần in ra màn hình 12

  3. Vào/ra trong C 14

Chương 2. KIỂU DỮ LIỆU, BIỂU THỨC VÀ CÂU LỆNH

  1. KIỂU DỮ LIỆU ĐƠN GIẢN 20

  1. Khái niệm về kiểu dữ liệu 20

  1. Kiểu ký tự 21

  2. Kiểu số nguyên 22

  3. Kiểu số thực 22

HẰNG - KHAI BÁO VÀ SỬ DỤNG HẰNG 23

  1. Hằng nguyên 23

  1. Hằng thực 23

  2. Hằng kí tự 24

  3. Hằng xâu kí tự 25

  4. Khai báo hằng 26

BIẾN - KHAI BÁO VÀ SỬ DỤNG BIẾN 27

  1. Khai báo biến 27

  1. Phạm vi của biến 28

  2. Gán giá trị cho biến (phép gán) 28

  3. Một số điểm lưu ý về phép gán 29

PHÉP TOÁN, BIỂU THỨC VÀ CÂU LỆNH 30

  1. Phép toán 30

  2. Các phép gán 32

  3. Biểu thức 33

  4. Câu lệnh và khối lệnh 37

THƯ VIỆN CÁC HÀM TOÁN HỌC 38

  1. Các hàm số học 38

  1. Các hàm lượng giác 38

Chương 3. CẤU TRÚC ĐIỀU KHIỂN VÀ DỮ LIỆU KIỂU MẢNG

  1. CẤU TRÚC RẼ NHÁNH 41

  1. Câu lệnh điều kiện if 41

  1. Câu lệnh lựa chọn switch 43

  2. Câu lệnh nhảy goto 45

CẤU TRÚC LẶP 47

  1. Lệnh lặp for 47

  1. Lệnh lặp while 51

  2. Lệnh lặp do ... while 55

  3. Lối ra của vòng lặp: break, continue 57

  4. So sánh cách dùng các câu lệnh lặp 58

MẢNG DỮ LIỆU 59

  1. Mảng một chiều 59

  1. Xâu kí tự 63

MẢNG HAI CHIỀU 73

Chương 4. HÀM VÀ CHƯƠNG TRÌNH

  1. CON TRỎ VÀ SỐ HỌC ĐỊA CHỈ 83

  1. Địa chỉ, phép toán & 83

  1. Con trỏ 84

  2. Các phép toán với con trỏ 86

  3. Cấp phát động, toán tử cấp phát, thu hồi new, delete 88

  4. Con trỏ và mảng, xâu kí tự 90

  5. Mảng con trỏ 94

HÀM 95

  1. Khai báo và định nghĩa hàm 95

  1. Lời gọi và sử dụng hàm 98

  2. Hàm với đối mặc định 100

  3. Khai báo hàm trùng tên 101

  4. Biến, đối tham chiếu 102

  5. Các cách truyền tham đối 104

  6. Hàm và mảng dữ liệu 109

  7. Con trỏ hàm 119

ĐỆ QUI 123

  1. Khái niệm đệ qui 123

  1. Lớp các bài toán giải được bằng đệ qui 124

  2. Cấu trúc chung của hàm đệ qui 125

  3. Các ví dụ 125

TỔ CHỨC CHƯƠNG TRÌNH 127

  1. Các loại biến và phạm vi 127

  1. Biến với mục đích đặc biệt 132

  2. Các chỉ thị tiền xử lý 135

Chương 5. DỮ LIỆU KIỂU CẤU TRÚC VÀ HỢP

  1. KIỂU CẤU TRÚC 145

  1. Khai báo, khởi tạo 145

  1. Truy nhập các thành phần kiểu cấu trúc 147

  2. Phép toán gán cấu trúc 148

  3. Các ví dụ minh hoạ 150

  4. Hàm với cấu trúc 152

  5. Cấu trúc với thành phần kiểu bit 164

  6. Câu lệnh typedef 165

  7. Hàm sizeof() 166

CẤU TRÚC TỰ TRỎ VÀ DANH SÁCH LIÊN KẾT 166

  1. Cấu trúc tự trỏ 167

  1. Khái niệm danh sách liên kết 169

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

KIỂU HỢP 176

  1. Khai báo 176

  1. Truy cập 176

KIỂU LIỆT KÊ 177

Chương 6. ĐỒ HỌA VÀ ÂM THANH

  1. ĐỒ HOẠ 184

  1. Khái niệm đồ hoạ 184

  1. Vào/ra chế độ đồ hoạ 185

  2. Vẽ điểm, đường, khối, màu sắc 188

  3. Viết văn bản trong màn hình đồ họa 195

  4. Chuyển động 197

  5. Vẽ đồ thị của các hàm toán học 200

ÂM THANH 207

Chương 7. LỚP VÀ ĐỐI TƯỢNG

  1. LẬP TRÌNH CẤU TRÚC VÀ LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG 212

  1. Phương pháp lập trình cấu trúc 212

  1. Phương pháp lập trình hướng đối tượng 214

LỚP VÀ ĐỐI TƯỢNG 216

  1. Khai báo lớp 217

  1. Khai báo các thành phần của lớp (thuộc tính và phương thức) 217

  2. Biến, mảng và con trỏ đối tượng 219

ĐỐI CỦA PHƯƠNG THỨC, CON TRỎ this 224

  1. Con trỏ this là đối thứ nhất của phương thức 224

  1. Tham số ứng với đối con trỏ this 225

  2. Các đối khác của phương thức 226

HÀM TẠO (Constructor) 230

  1. Hàm tạo (hàm thiết lập) 230

  1. Lớp không có hàm tạo và hàm tạo mặc định 235

  2. Hàm tạo sao chép (Copy constructor) 238

HÀM HỦY (Destructor) 246

  1. Hàm hủy mặc định 246

  1. Quy tắc viết hàm hủy 246

  2. Vai trò của hàm hủy trong lớp DT 247

  3. Ví dụ 247

CÁC HÀM TRỰC TUYẾN (inline) 253

  1. Ưu nhược điểm của hàm 253

  2. Các hàm trực tuyến 253

  3. Cách biên dịch và dùng hàm trực tuyến 254

  4. Sự hạn chế của trình biên dịch 255


Chương 8. HÀM BẠN, ĐỊNH NGHĨA PHÉP TOÁN CHO LỚP

  1. HÀM BẠN (friend function) 258

  1. Hàm bạn 258

  1. Tính chất của hàm bạn 259

  2. Hàm bạn của nhiều lớp 261

ĐỊNH NGHĨA PHÉP TOÁN CHO LỚP 266

  1. Tên hàm toán tử 266

  1. Các đối của hàm toán tử 266

  2. Thân của hàm toán tử 267


Chương 11. CÁC DÒNG NHẬP/XUẤT VÀ FILE

  1. NHẬP/XUẤT VỚI CIN/COUT 276

  1. Toán tử nhập >> 276

  1. Các hàm nhập kí tự và xâu kí tự 277

  2. Toán tử xuất << 279

ĐỊNH DẠNG 279

  1. Các phương thức định dạng 280

  1. Các cờ định dạng 281

  2. Các bộ và hàm định dạng 283

IN RA MÁY IN 283

LÀM VIỆC VỚI FILE 284

  1. Tạo đối tượng gắn với file 284

  1. Đóng file và giải phóng đối tượng 285

  2. Kiểm tra sự tồn tại của file, kiểm tra hết file 289

  3. Đọc ghi đồng thời trên file 290

  4. Di chuyển con trỏ file 290

NHẬP/XUẤT NHỊ PHÂN 292

  1. Khái niệm về 2 loại file: văn bản và nhị phân 292

  1. Đọc, ghi kí tự 293

  2. Đọc, ghi dãy kí tự 293

  3. Đọc ghi đồng thời 294

CHƯƠNG 1

CÁC KHÁI NIỆM CƠ BẢN CỦA c++

Các yếu tố cơ bản

Môi trường làm việc của C++

Các bước để tạo và thực hiện một chương trình

Vào/ra trong C++

  1   2   3   4   5   6   7   8   9   ...   55


Cơ sở dữ liệu được bảo vệ bởi bản quyền ©hocday.com 2016
được sử dụng cho việc quản lý

    Quê hương