Giáo trình C toàn tập
Trang 1© 2004 Trần Minh Châu FOTECH VNU
Ngôn ngữ lập trình C++
Giới thiệu môn học
2
Thông tin môn học
• Tên môn: Ngôn ngữ lập trình C++
• Số đơn vị học trình: 5
• Lý thuyết: 45 tiết; Thực hành: 30 tiết
– Thời gian tự học: nên dành khoảng 6 tiết mỗi tuần
• Giáo viên lý thuyết:
– Trần Minh Châu
• tmct@vnu.edu.vn , P 309 E3, http://10.10.0.10/~tmct/
• Giáo viên thực hành:
– Bùi Đức Giang
• giang816@yahoo.com , P 309 E3
Trang 2© 2004 Trần Minh Châu FOTECH VNU
Tài liệu
• Sách tham khảo chính
– Dietel & Dietel C++ How to Program, 2nd or 3rd
Edition.
• Sách đọc thêm
– Stroustrup, Bjarne The C++ Programming Language,
3rd Ed (*)
• tốt cho việc tra cứu
• Nếu không thể đọc sách tiếng Anh:
– “Tự học C++ trong 21 ngày”
(*) có thể download từ website môn học
4
Website môn học
• Địa chỉ
– từ trong mạng nội bộ http://10.10.0.10/courses/
– từ Internet http://www.fotech.vnu.edu.vn/courses/
• Nội dung:
– Bài giảng, bài tập, thông báo, và mọi thông tin đều được đăng tại đây, sinh
viên có trách nhiệm thường xuyên theo dõi
– Mỗi sinh viên sẽ có một tài khoản riêng để nộp bài tập và tham gia diễn
dàn, sinh viên có trách nhiệm bảo vệ tài khoản của mình
• Diễn đàn: truy nhập từ website môn học; nơi tốt nhất để trao
đổi các nội dung liên quan đến môn học
– Những bài có nội dung không liên quan hoặc lời lẽ thiếu lịch sự sẽ bị xóa bỏ
– Sinh viên nào cố tình gửi các bài thuộc loại trên sẽ bị cắt tài khoản website
Trang 3© 2004 Trần Minh Châu FOTECH VNU
Môi trường lập trình
• Sinh viên có thể tuỳ ý lựa chọn, nhưng môi trường lập
trình phải thoả mãn chuẩn ANSI/ISO C++
• Môi trường được cung cấp trên lớp:
– gcc 3.2.x trên Redhat 9.0 (máy selablinux)
– Dev-C++ trên MS-Windows (có kèm gcc 3.2 cho biên dịch dòng lệnh)
• Bất kể sinh viên sử dụng môi trường nào, các chương trình
bài tập/bài thực hành phải biên dịch được bằng gcc 3.2
tại máy selablinux (Nếu có ngoại lệ sẽ được thông báo cụ
thể)
• Mỗi sinh viên sẽ được cấp một tài khoản tại máy
selablinux để có thể sử dụng môi trường Linux và lưu trữ
các file phục vụ học tập
– login và làm việc tại các máy trạm trong mạng nội bộ của Khoa
6
Đánh giá kết quả học tập
• Thi học kỳ: (60%)
– bài thi viết
– được mang vào phòng thi các loại sách in và bài giảng môn học
• Bài tập: (40%)
– Dự tính 5-7 bài tập, trong đó có 3 bài tập tính điểm
– Nộp bài muộn không có lý do (hoặc lý do không chính đáng): 0 điểm cho
bài nộp
– Quay cóp 1 lần: 0 điểm cho bài nộp, phạt 20%
– Quay cóp 2 lần trở lên: trượt hẳn (không được thi lại)
• Bài thực hành (hàng tuần)
– kết quả không tính vào điểm tổng kết
– tuy nhiên, sinh viên có thái độ không nghiêm túc đối với các bài thực hành
sẽ bị phạt 10%
Trang 4© 2004 Trần Minh Châu FOTECH VNU
Đánh giá kết quả học tập
• Công thức tính điểm
(áp dụng cho tất cả các lần thi)
Tổng kết = Điểm thi + Điểm bài tập – Điểm phạt
• Để đạt yêu cầu môn học, sinh viên phải:
– Có điểm tổng kết từ trung bình trở lên
– Có điểm thi cuối kỳ từ trung bình trở lên
– Không vi phạm quay cóp quá một lần
8
Luật danh dự
• Sinh viên được khuyến khích thảo luận về bài tập, nhưng
phải độc lập thực hiện bài làm
• Mọi đoạn mã chương trình trích từ sách hoặc từ chương
trình khác phải được ghi chú rõ ràng về nguồn gốc
• Sinh viên không được cộng tác khi lập trình, không được
sao chép chương trình hoặc một phần chương trình của
sinh viên khác
• Những hành động dưới đây được coi là quay cóp
– sao chép bài làm hoặc một phần bài làm của sinh viên khác
– cho sinh viên khác xem bài làm của mình
– thảo luận với sinh viên khác chi tiết đến mức có một số đoạn chương
trình cơ bản giống nhau
Trang 5© 2004 Trần Minh Châu FOTECH VNU
Phác thảo nội dung môn học
1 Giới thiệu lập trình, ngôn ngữ lập trình, và ngôn ngữ C++
2 Các phép toán, kiểu dữ liệu cơ bản, các cấu trúc điều khiển
3 Chương trình con
4 Mảng
5 Con trỏ và xâu ký tự
6 Cấu trúc dữ liệu trừu tượng
7 Các dòng ra/vào (Input/Output Stream),
file dữ liệu (File Processing)
8 So sánh C và C++
9 Các chủ đề mở rộng