Xây dựng chương trình quản lý sinh viên bằng ngôn ngữ lập trình c++ | Xemtailieu

KHOA CÔNG NGHỆ THÔNG TIN

————–  ————-

ĐỒ ÁN

ĐỀ TÀI: XÂY DỰNG CHƯƠNG TRÌNH QUẢN LÝ SINH

VIÊN BẰNG NGÔN NGỮ LẬP TRÌNH C++

GVHD

SVTH

LỚP

MSSV

: TS. PHẠM ANH PHƯƠNG

: NGUYỄN ĐÌNH HỰU

: K16TCD1

: 161135920

Đà Nẵng, tháng 11 năm 2012.

Đồ án cơ sở

GVHD: Phạm Anh Phương

PHẦN MỞ ĐẦU

1. Lí do chọn đề tài

Trong sự phát triển của khoa học cuối thế kỷ 20 đầu thế kỷ 21, công nghệ thông tin hiện

nay là ngành có tốc độ phát triển nhanh nhất. Công nghệ thông tin ở nước ta còn

mới, song tốc độ phát triển của nó rất nhanh và mạnh, chiếm một vị trí quan trọng trong

các ngành khoa học công nghệ. Một trong những lĩnh vực đang được ứng dụng tin học

hóa rất phổ biến ở nước ta là lĩnh vực quản lý. Tin học hóa trong quản lý đã giúp cho

các nhà quản lý điều hành công việc một cách khoa học, chính xác và hiệu quả. Việc

ứng dụng công nghệ thông tin vào công tác quản lý sinh viên là cần thiết. vì vậy tôi

chọn đề tài “xây dựng chương trình quản lý điểm của sinh viên bằng ngôn ngữ lập

trình C++” làm đề tài nghiên cứu của tôi.

2. Mục tiêu của đề tài

Xây dựng chương trình quản lí sinh viên bằng ngôn ngữ lập trình C++.

3. Phạm vi nghiên cứu

Phân tích thiết kế hệ thống quản lí sinh viên bằng ngôn ngữ lập trình C++.

4. Phương pháp nghiên cứu

– Đọc tham khảo một số tài liệu về phương pháp lập trình C++, trên cơ sở đó tiến

hành phân tích thiết kế hệ thống quản lí sinh viên.

– Tham khảo, quan sát các phần mềm quản lí sinh viên trong thực tế.

SVTH: Nguyễn Đình Hựu

2

Khoa Công Nghệ Thông Tin

Đồ án cơ sở

GVHD: Phạm Anh Phương

CHƯƠNG I: GIỚI THIỆU VỀ NGÔN NGỮ LẬP TRÌNH C++

1.1. Ngôn Ngữ Lập Trình C++

-C là ngôn ngữ lập trình cấp cao, được sử dụng rất phổ biến để lập trình hệ thống

cùng với Assembler và phát triển các ứng dụng.

-Ngôn ngữ lập trình C là một ngôn ngữ lập trình hệ thống rất mạnh và rất “mềm

dẻo”, có một thư viện gồm rất nhiều các hàm (function) đã được tạo sẵn. Người lập trình

có thể tận dụng các hàm này để giải quyết các bài toán mà không cần phải tạo mới. Hơn

thế nữa, ngôn ngữ C hỗ trợ rất nhiều phép toán nên phù hợp cho việc giải quyết các bài

toán kỹ thuật có nhiều công thức phức tạp. Ngoài ra, C cũng cho phép người lập trình tự

định nghĩa thêm các kiểu dữ liệu trừu tượng khác. Tuy nhiên, điều mà người mới vừa học

lập trình C thường gặp “rắc rối” là “hơi khó hiểu” do sự “mềm dẻo” của C. Dù vậy, C

được phổ biến khá rộng rãi và đã trở thành một công cụ lập trình khá mạnh, được sử dụng

như là một ngôn ngữ lập trình chủ yếu trong việc xây dựng những phần mềm hiện nay.

1. 2. Danh Sách Mảng Một Chiều

1.2.1. Khái niệm mảng

– Mảng là kiểu dữ liệu có cấu trúc bao gồm nhiều phần tử kiểu và được bố trí vùng

nhớ liên tục.

– Kiểu của các phần tử mảng gọi là kiểu cơ sở. Mỗi phần tử mảng là một biến có

kiểu cơ sở.

– Mảng có kích thước là số phần tử trong mảng. Kích thước mảng bắt buộc phải là

biểu thức hằng nguyên để có thể cấp phát vùng nhớ lúc biên dịch.

SVTH: Nguyễn Đình Hựu

3

Khoa Công Nghệ Thông Tin

Đồ án cơ sở

GVHD: Phạm Anh Phương

1.2.2. Ưu và khuyết điểm của mảng một chiều

Ưu điểm khi dùng mảng

– Ưu điểm của mảng là giúp ta tiết kiệm tài nguyên hệ thống.Ta có thể sử dụng

một mảng có kích thước lớn trong một thời gian nào đó rồi xóa bỏ để trả lại vùng nhớ cho

hệ thống.

– Dễ cài đặt và truy nhập các phần tử dữ liệu.

– Tốc độ truy nhập đến một vị trí bất kỳ trên mảng nhanh,hiệu quả.

Khuyết điểm khi dùng mảng

– Cần phải xác định trước số phần tử mảng trước khi sử dụng => không phù hợp

với các bài toán chưa biết trước số lượng phần tử.

– Khó khăn trong các thao tác chèn và xóa một phần tử bất kỳ trong mảng

– Nếu bài toán mà việc chèn phần tử xóa phần tử diễn ra liên tục thì tốc độ xử lý sẽ

rất chậm.

1.2.3. Các thao tác cơ bản trên mảng 1 chiều

• Nhập giá trị cho các phần tử mảng.

• Xuất giá trị các phần tử mảng (ra màn hình).

• Thêm 1 phần tử vào mảng.

• Xóa một phần tử ra khỏi mảng.

• Tìm kiếm trên mảng.

• Sắp xếp mảng.

– Các thao tác trên thực chất là duyệt mảng và xử lý trên từng phần tử mảng nhờ

vào cấu trúc lặp một cách tổng quát như sau:

+ Hàm nhập giá trị cho các phần tử mảng từ bàn phím :

void Input(int a[], int n)

SVTH: Nguyễn Đình Hựu

4

Khoa Công Nghệ Thông Tin

Đồ án cơ sở

GVHD: Phạm Anh Phương

{

for (int i=0; i

TRƯỜNG ĐẠI HỌC DUY TÂNKHOA CÔNG NGHỆ THÔNG TIN————–  ————-ĐỒ ÁNĐỀ TÀI: XÂY DỰNG CHƯƠNG TRÌNH QUẢN LÝ SINHVIÊN BẰNG NGÔN NGỮ LẬP TRÌNH C++GVHDSVTHLỚPMSSV: TS. PHẠM ANH PHƯƠNG: NGUYỄN ĐÌNH HỰU: K16TCD1: 161135920Đà Nẵng, tháng 11 năm 2012.Đồ án cơ sởGVHD: Phạm Anh PhươngPHẦN MỞ ĐẦU1. Lí do chọn đề tàiTrong sự phát triển của khoa học cuối thế kỷ 20 đầu thế kỷ 21, công nghệ thông tin hiệnnay là ngành có tốc độ phát triển nhanh nhất. Công nghệ thông tin ở nước ta cònmới, song tốc độ phát triển của nó rất nhanh và mạnh, chiếm một vị trí quan trọng trongcác ngành khoa học công nghệ. Một trong những lĩnh vực đang được ứng dụng tin họchóa rất phổ biến ở nước ta là lĩnh vực quản lý. Tin học hóa trong quản lý đã giúp chocác nhà quản lý điều hành công việc một cách khoa học, chính xác và hiệu quả. Việcứng dụng công nghệ thông tin vào công tác quản lý sinh viên là cần thiết. vì vậy tôichọn đề tài “xây dựng chương trình quản lý điểm của sinh viên bằng ngôn ngữ lậptrình C++” làm đề tài nghiên cứu của tôi.2. Mục tiêu của đề tàiXây dựng chương trình quản lí sinh viên bằng ngôn ngữ lập trình C++.3. Phạm vi nghiên cứuPhân tích thiết kế hệ thống quản lí sinh viên bằng ngôn ngữ lập trình C++.4. Phương pháp nghiên cứu- Đọc tham khảo một số tài liệu về phương pháp lập trình C++, trên cơ sở đó tiếnhành phân tích thiết kế hệ thống quản lí sinh viên.- Tham khảo, quan sát các phần mềm quản lí sinh viên trong thực tế.SVTH: Nguyễn Đình HựuKhoa Công Nghệ Thông TinĐồ án cơ sởGVHD: Phạm Anh PhươngCHƯƠNG I: GIỚI THIỆU VỀ NGÔN NGỮ LẬP TRÌNH C++1.1. Ngôn Ngữ Lập Trình C++-C là ngôn ngữ lập trình cấp cao, được sử dụng rất phổ biến để lập trình hệ thốngcùng với Assembler và phát triển các ứng dụng.-Ngôn ngữ lập trình C là một ngôn ngữ lập trình hệ thống rất mạnh và rất “mềmdẻo”, có một thư viện gồm rất nhiều các hàm (function) đã được tạo sẵn. Người lập trìnhcó thể tận dụng các hàm này để giải quyết các bài toán mà không cần phải tạo mới. Hơnthế nữa, ngôn ngữ C hỗ trợ rất nhiều phép toán nên phù hợp cho việc giải quyết các bàitoán kỹ thuật có nhiều công thức phức tạp. Ngoài ra, C cũng cho phép người lập trình tựđịnh nghĩa thêm các kiểu dữ liệu trừu tượng khác. Tuy nhiên, điều mà người mới vừa họclập trình C thường gặp “rắc rối” là “hơi khó hiểu” do sự “mềm dẻo” của C. Dù vậy, Cđược phổ biến khá rộng rãi và đã trở thành một công cụ lập trình khá mạnh, được sử dụngnhư là một ngôn ngữ lập trình chủ yếu trong việc xây dựng những phần mềm hiện nay.1. 2. Danh Sách Mảng Một Chiều1.2.1. Khái niệm mảng- Mảng là kiểu dữ liệu có cấu trúc bao gồm nhiều phần tử kiểu và được bố trí vùngnhớ liên tục.- Kiểu của các phần tử mảng gọi là kiểu cơ sở. Mỗi phần tử mảng là một biến cókiểu cơ sở.- Mảng có kích thước là số phần tử trong mảng. Kích thước mảng bắt buộc phải làbiểu thức hằng nguyên để có thể cấp phát vùng nhớ lúc biên dịch.SVTH: Nguyễn Đình HựuKhoa Công Nghệ Thông TinĐồ án cơ sởGVHD: Phạm Anh Phương1.2.2. Ưu và khuyết điểm của mảng một chiềuƯu điểm khi dùng mảng- Ưu điểm của mảng là giúp ta tiết kiệm tài nguyên hệ thống.Ta có thể sử dụngmột mảng có kích thước lớn trong một thời gian nào đó rồi xóa bỏ để trả lại vùng nhớ chohệ thống.- Dễ cài đặt và truy nhập các phần tử dữ liệu.- Tốc độ truy nhập đến một vị trí bất kỳ trên mảng nhanh,hiệu quả.Khuyết điểm khi dùng mảng- Cần phải xác định trước số phần tử mảng trước khi sử dụng => không phù hợpvới các bài toán chưa biết trước số lượng phần tử.- Khó khăn trong các thao tác chèn và xóa một phần tử bất kỳ trong mảng- Nếu bài toán mà việc chèn phần tử xóa phần tử diễn ra liên tục thì tốc độ xử lý sẽrất chậm.1.2.3. Các thao tác cơ bản trên mảng 1 chiều• Nhập giá trị cho các phần tử mảng.• Xuất giá trị các phần tử mảng (ra màn hình).• Thêm 1 phần tử vào mảng.• Xóa một phần tử ra khỏi mảng.• Tìm kiếm trên mảng.• Sắp xếp mảng.- Các thao tác trên thực chất là duyệt mảng và xử lý trên từng phần tử mảng nhờvào cấu trúc lặp một cách tổng quát như sau:+ Hàm nhập giá trị cho các phần tử mảng từ bàn phím :void Input(int a[], int n)SVTH: Nguyễn Đình HựuKhoa Công Nghệ Thông TinĐồ án cơ sởGVHD: Phạm Anh Phươngfor (int i=0; i