1. Trang chủ
  2. » Luận Văn - Báo Cáo

Báo Cáo Đồ Án C++ Quản Lý Sinh Viên.pdf

20 0 0
Tài liệu được quét OCR, nội dung có thể không chính xác
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Nội dung

Trang 1

BO GIAO DUC VA DAO TAO

TRUONG DAI HOC KINH DOANH VA CONG NGHE HA NOI

BAO CAO DO AN C++

Chu dé: Quan Ly Sinh Vién

Ho va tén:BUI ANH DUNG

Trang 2

MỤC LỤC

Chương 1: CƠ SỞ LÝ THUYÉT VỀ NGÔN NGỮ LẬP TRÌNH C++

1.1:Giới thiệu về C+T -: 1: 12221222221.22221.0.2.0.0.2.2 2 2eeed 1.2: Ứng dụng ngôn ngữ lập trình C-+-1 s5 tt SE 121221211 E1 prrrrrei Chương 2: PHÂN TÍCH VÀ THIẾT KẺ PN lá nề 2.2:Giải quyết bài toán ng t1 HH 2n 1 tr rưyu 2.2.1:Phương pháp L0 2212121212111 111121112211 11811121 tk se 2.2.2:Lý thuyẾt - cn tT2T2 21121121 111211 1n trêu

2.2.2.1:Định nghĩa về danh sách - s cnS T121 11 1151551551151 5 1E tren

2.2.2.2:Định nghĩa về danh sách liên kẾt -5- 5 SE xe ryey

2.3:Ứng dụng c c1 HH1 n1 ng tra

2.3.1:Lữu đồ cá ch HH he geg

2.3.2:Giới thiệu chương trình c2 2222221112111 1213 12111 1111811181201 1x1 ky

Chương 3: CHƯƠNG TRÌNH ĐÈ MƠ

3.1:Hướng dẫn cài đặt chương trình - 5 SE 2121112111101 Et re 3.2:Hướng dẫn sử dụng St TT E111 1111211121112 1 HH HH rig

Chương 4: KÉT LUẬN VÀ HUONG PHAT TRIEN

4.1:Kết quả đạt ẨƯỢC 0 2.10 n 12112 n1 1H15 H111 8111 k1 rớy 4.2:Hạn chế của chương trình - - ¿+ c1 221 121121111151 152115 1115111512511 1111 x se

4.3:Hướng dẫn phát - 5: s ST 12111151211112111121211 211 11 11tr

4.4: Tài liệu tham khiảo ccccceeeesseeeescscececeecececsesesensnstssceceeeseeecetesececeveeeaea

Trang 3

Mở đầu CHƯƠNG 1 CƠ SỞ LÝ THUYET VE NGON NGU LAP TRINH C++ 1.1 Giới thiệu C ++ là một ngôn ngữ lập trình được phát triển bởi Bjarne Stroustrup vào năm 1979 tai Bell Labs C ++ được coi là ngôn ngữ bậc trung (middle-level) như một phần mở rộng của ngôn ngữ lập trình C, hoặc 7C với các lớp Class” vì nó bao gồm sự kết hợp của cả các tính năng của ngôn ngữ cấp cao và cấp thấp

C ++ chạy trên nhiều nền tảng khác nhau, chăng hạn như Windows, Mac OS và các phiên bản khác nhau của UNIX

- Ngôn ngữ đã được mở rộng đáng kể theo thời gian và C ++ hiện nay có nhiều tính năng như:

Lập trình tổng quát Lập trình hướng đối tượng Lập trình thủ tục

Ngôn ngữ đa mẫu hình tự do có kiểu tĩnh

Dữ liệu trừu tượng Lập trình đa hình

Tính phô biến: C++ là một trong những ngôn ngữ lập trình phô biến nhất trên thê giới

Tính thực thi nhanh: Nếu bạn đã sành sỏi về C+ + thì bạn có thê lập trình rất

nhanh Một trong những mục tiêu của C++ chính là khả năng thực thi Và nêu bạn cần thêm các tính năng cho chương trình, C++ cho phép bạn sử dụng ngôn ngữ Assembly (Hợp ngữ) — Ngôn ngữ lập trình bậc thấp nhất dùng để giao tiếp trực tiếp với phần cứng của máy tính

Thư viện đầy đủ: Có rất nhiều tài nguyên sử dụng cho người lập trình bằng C++, bao gom ca do hoa API, 2D, 3D, vat ly cac thiét bi âm thanh hồ trợ giúp cho

lập trình viên dê dàng thực thị

Da mô hình: C++ cũng cho phép bạn lập trình theo cầu trúc tuyến tính, hướng chức năng, hướng đôi tượng đa dạng tuỷ theo yêu câu của người lập trình 1.2 Ứng dụng ngôn ngữ lập trình C++

Games: Ngôn ngữ C+' cũng được sử dụng đề phát triển trò chơi Nó ghi đè lên sự phức tạp của game 3D, giúp tôi ưu hóa các nguôn tài nguyên, hô trợ tùy chon cho nhiều người chơi với mạng Việc sử dụng C ++ cung câp quyên kiêm soát phan cứng và cho phép lập trình thủ tục các chức năng chuyên sâu của CPU

Trang 4

Hoạt hình: Phần mềm hoạt hình được phát triển với sự hỗ trợ của ngôn ngữ

C ++ Phần mềm hoạt hình 3D, mô phỏng, mô hình hóa, kết xuất, v.v được coi là bộ công cụ mạnh mẽ C++ được sử dụng nhiều trong việc xây dựng những ứng dụng thời gian thực, xử lý hình ảnh và cảm biến di động, hiệu ứng hình ảnh, mô hình hóa

Phần mềm này được sử dụng cho các hoạt ảnh, môi trường thực tế áo, đồ họa chuyển động và tạo nhân vật Thiết bị thực áo đang rất pho bién nhat trong thé

giới giải trí hiện nay, nó dem lại những trải nghiệm vô cùng chân thực và thu vi Ứng dụng: C++ được sử dụng để phát triển ứng dụng mới, các ứng dụng này dựa trên giao diện người dùng đồ họa và những ứng dụng được sử dụng nhiều chăng hạn như Adobe Photoshop

Nhiều ứng dụng của hệ thông Adobe đều được phát triển bằng C ++ như Adobe Launcher, Illustrator, va Image Ready

Trỉnh duyệt web: C ++ được sử dụng để tạo ra Google Chrome và ca trinh

duyét Mozilla Firefox Một số ứng dụng được viết bằng C ++, trinh duyét Chrome là một trong số đó, các ứng dụng khác giống như một hệ thống tệp, bản đồ giảm

xử lý dữ liệu cụm lớn

Mozilla cũng có một ứng dụng khác được viết bằng C ++, không đâu khác

chính là ứng dụng email khách Mozilla Thunderbird C ++ là một công cụ kết xuất

các dự án nguồn mo cho Google va Mozilla

Trình biên dịch: Hầu như các trình biên dịch chủ yếu được viết bằng ngôn ngữ C ++ Các trỉnh biên dịch mà được sử dụng đề biên dịch băng các ngôn ngữ như C #, Java, v.v cũng được viết băng C ++

Nó cũng được dùng đề phát trên các ngôn ngữ này và C ++ độc lập với nền tảng, nó có thể tạo ra nhiều loại phần mềm khác

Phần mềm cơ sở dữ liệu: Ngôn ngữ C++ cũng được sử dụng để phát triển phan mềm cơ sở dữ liệu và phần mềm cơ sở dữ liệu mã nguồn mở Một ví dụ điển hình đó là MySQL, đây là một trong những phần mềm quản lý cơ sở dữ liệu được sử dụng rộng rãi trong các tô chức hoặc các nhà phát triển, giúp tiết kiệm tiền bạc,

thời gian, hệ thống kinh doanh và phần mềm đóng gói

Một số ứng dụng dựa trên phần mềm truy cập cơ sở dữ liệu được sử dụng nhu la Wikipedia, Youtube, Yahoo, v.v

Trang 5

Chương 2 : PHAN TICH VA THIET KE

2.1 M6 ta bai toan

Khai báo một struct lưu trữ thông tin sinh viên bao gồm : Mã số, họ tên,

năm sinh, giới tính, địa chỉ, mã lớp, ngành học, khóa học, điểm môn 1, môn 2,

môn 3, điểm trung bình, kết quả, xếp loại

Dùng danh sách liên kết đề lưu trữ thông tin của một sinh viên với cau tric

da cho

Sử dụng menu với nhiều lựa chọn cho người dùng

2.2 Giải quyết bài toán

2.2.1 Phương pháp

Ta sử dụng phương pháp mô tả thông tin một sinh viên là một sfruct Giả sử mỗi struct của chương trình là một node trong danh sách liên kết, mỗi node gồm phần data lưu trữ thông tin sinh viên và phần link lưu trũ địa chỉ của phân tử kế tiếp hay phần tử trước đó Từ đó ta sử dụng phương pháp chèn thêm node, tìm node và xóa node

2.2.2 Lý thuyết

2.2.2.1 Định nghĩa về danh sách

Một danh sách (list) là một tập hợp gồm số hữu hạn phần tử cùng

kiểu, có thứ tự

Có hai cách cài đặt danh sách là :

+ Cai dat theo kiểu kế tiếp : ta có danh sách kề hay danh sách đặt + Cài đặt theo kiểu liên kết : ta có danh sách liên kết

Trang 6

2.2.2.2 Định nghĩa về danh sách liên kết

Các phần tử của danh sách gọi la node, nam rai rat trong bộ nhớ Mỗi node ngoài vùng dữ liệu thông thường còn có vùng liên kết chứa địa chỉ của node kế tiếp hay node trước đó

Mỗi node gồm hai phần :

+ Phần data, information : lưu trữ các thông tin về bản thân phần tử + Phần link hay con trỏ : lưu trũ địa chỉ của phần tử kế tiếp trong danh sách, hoặc lưu trữ giá trị NULL nếu là phần tử cuối danh sách

Danh sách liên kết là cấu trúc dữ liệu động, có thể thêm hay hủy

node của danh sách trong khi chạy chương trình Với cách cài đặt các thao tác

thêm hay hủy node ta chỉ cần thay đôi vùng liên kết lại cho phù hợp

@ a|- B se X |e Z sie Y \-+

Trang 7

2.3 Ứng Dụng 2.3.1 Lưu đồ - Lưu đỗ nhập mới sinh viên Nhập thông tin Vv

| Lưu thông tin vào danh sách |

- Lưu đồ hiền thị thông tin Đọc thông tin Hiển thị danh sách

Trang 11

- Lưu đô thống kê :

Duyệt danh sách

Trang 12

- Lưu đồ chinh sửa thông tin sinh viên

Nhập mã sô sinh vien

'

| Duyệt danh sách

Đúng Sal

v

Trang 13

2.3.2 Giới thiệu chương trình

Chương trình quản lý sinh viên gồm có các chức năng :

+ Nhập mới một sinh viên

+ Xem danh sách sinh viên

+ Sắp xếp danh sách : sắp xếp theo mã số sinh viên, sắp xếp theo tên và sắp xếp theo điểm trung bình theo giai thuat Interchange Sort

+ Thay đối thông tin một sinh viên : thay đối tất cả các trường của sinh viên ngoại trừ mã số sinh viên

+ Xóa sinh viên ra khỏi danh sách gồm : xóa sinh viên theo MSSV hoặc

xóa toàn bộ danh sách

+ Tìm kiếm thông tin sinh viên gồm : tìm kiếm theo MSSV, tìm kiếm theo

tên sinh viên, tìm kiếm theo địa chỉ với giải thuật tìm kiếm tuần tự

+ Thống kê gồm : thông kê theo giới tính, thống kê theo kết quả đậu rớt, thống kê theo mã lớp, thông kê theo địa chỉ và thông kê theo xếp loại học lực

+ Chức năng lưu dữ liệu ta có thê ghi mới hoặc ghi dé 1én file đã có sẵn + Chức năng mở file đã có sẵn

+ Thoát khỏi chương trình

Trang 14

Chương 3 : CHƯƠNG TRÌNH DEMO

3.1 Hướng dẫn cài đặt chương trình

Copy thư mục nienluan 1 từ CD vào ô đĩa C

Cài đặt chương trình Microsoft Visual C++ 6.0 vào ổ đĩa C Sau khi cài xong, khởi động chương trình (Start -> Microsoft Visual Studio 6.0 ->

Microsoft Visual C++ 6.0) chọn File -> Open -> chọn đường dẫn đến file

nienluan 1 (QLSV.cpp) Ctrl F5 dé chạy chương trình 3.2 Hướng dẫn sử dụng

Giao diện chính của chương trình

Dung-LT\Debug\QLsv_TH27-¢

Trang 15

- Nhân phím I đề nhập sinh viên vào danh sách

Remai x13 = A A Aav Me (ii lý €3 Ê Í đaBbCci AaBbC AaBbCc AaBbCc AaapccD AaBbC AaBbCc 4a

V_TH27-02_Dung-LT.exe ] x

Đề xem lại danh sách sinh viên, nhân phím 2

øo ma sinh vien

-o diem GPA cao nhat

vien theo GPA tu cao der

Trang 16

1

`

Nhap thong tin sinh vier

Hien thi toan bo sinh vien

Tim kiem sinh vien theo ma sinh viet

Danh ST l0i sinh V ien co diem GPA cao nhat

Sap xep danh sach sinh vien theo GPA tu cao de

Sua thong tin sinh vier Xoa thong tin sinh vien

Thoat chuo! s4 trinh

hap lua chon: 4

1 sinh vie ‘o diem GPA cao nhat:

' may r b

vien: b 20/2/2000 sinh: Jiem GPA: Ma sinh vien: Ten sinh vien: op: ® iy sinh: 6/8/2000 ` me) abe ae oy 0 gUuy€rï 7 02 sinh: 03/03/2000 1 GPA: 3.5

Trang 18

Chương 4 : KET LUAN VA HUONG PHAT TRIEN 4.1 Kết quả đạt được Sau bảy tuần nghiên cứu và tìm hiểu đề tài, cùng với sự hướng dẫn tận tình của thầy cô và sự giúp đỡ của bạn bè Hôm nay, báo cáo cơ bản đã được hoàn

thành và đạt được một số kết quả như sau:

Hiểu và cài đặt được các thuật toán đã được học bằng ngôn ngữ C++, biết

cách sử dụng các thao tác sắp xếp, tìm kiểm và các hàm trong C++

Chương trình chạy ổn định, giao diện thân thiện với người dùng vả dé sử dụng, có thê nhập dữ liệu trực tiếp từ bàn phím

Chương trình được thiết kế dưới dạng các chương trình con độc lập nhau nên dé dang kiêm tra và sửa chữa khi yêu cầu chỉnh sửa

Chương trình sử dụng danh sách liên kết để lưu trữ thông tin sinh viên nên không hạn chế số lượng sinh viên khi nhập vào

4.2 Hạn chế của chương trình

Trang 19

Mặc dù có cố gắng đề hoàn thành, nhưng đây là lần đầu tiên viết một chương trình hoàn chỉnh nên vẫn còn thiếu nhiều kinh nghiệm trong kỹ thuật lập trình cũng

như trong cách tô chức dữ liệu Mặt khác, do thời gian hạn chế nên chương trình vẫn

còn nhiều sai xót ngoài ý muốn như:

Khi dùng danh sách liên kết đề lưu trữ thông tin sinh viên sẽ tốn bộ nhớ vì mỗi node ngoài chứa vùng dữ liệu thông thường còn có vùng liên kết chứa địa chỉ của node kề tiếp hay node trước đó

Chưa kiểm tra được mã số sinh viên đã tồn tại trong danh sách

Chưa kiểm tra được dữ liệu khi người dùng nhập vào như mã số sinh viên,

năm sinh, khóa học, điểm nêu nhập kí tự thì chương trình sẽ chạy không đúng và

có thê bị treo máy

Có thê giao điện còn chưa đáp đầy đú các chức năng người sử dụng yêu cau 4.3 Hướng phát triển

Thiết kế giao điện thân thiện với người sử dụng Cải tiến chương trình đây đủ và hoàn thiện hơn

Phát triển chương trình sang các ngôn ngữ khác như C#, visual Basic, Java

đề được hỗ trợ đầy đủ hơn

4.4 Tài liệu tham khảo

- _ Giáo trình cấu trúc dữ liệu và giải thuật, C++

- _ Ngôn ngữ lập trình C — Quách Tuần Ngọc Nhà xuất bản giáo dục

- _ Kỹ thuật lập trình C cơ sở và nâng cao — Phạm Văn At NXB KH —KT

- Gido trinh lap trinh C ( Tap 1 & 2 ) — Tran Dan Thu NXB DH QG

TPHCM

Ngày đăng: 17/07/2024, 16:10