BÁO CÁO THỰC HÀNH ĐỀ TÀI THIẾT KẾ WEB Quản lý sinh viên

20 6 0
BÁO CÁO THỰC HÀNH ĐỀ TÀI THIẾT KẾ WEB Quản lý sinh viên

Đ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

TRƯỜNG ĐẠI HỌC GIAO THÔNG VẬN TẢI PHÂN HIỆU TẠI TP HỒ CHÍ MINH BỘ MƠN CƠNG NGHỆ THƠNG TIN BÁO CÁO THỰC HÀNH ĐỀ TÀI: THIẾT KẾ WEB Giảng viên hướng dẫn: NGUYỄN LÊ MINH Sinh viên thực hiện: NGUYỄN ĐÌNH TRINH ĐẠT Lớp : CQ.62.CNTT Khố : 62 Tp Hồ Chí Minh, năm 2022 TRƯỜNG ĐẠI HỌC GIAO THƠNG VẬN TẢI PHÂN HIỆU TẠI TP HỒ CHÍ MINH BỘ MÔN CÔNG NGHỆ THÔNG TIN BÁO CÁO THỰC HÀNH ĐỀ TÀI: QUẢN LÝ SINH VIÊN Giảng viên hướng dẫn: NGUYỄN LÊ MINH Sinh viên thực hiện: NGUYỄN ĐÌNH TRINH ĐẠT Lớp : CQ.62.CNTT Khố : 62 Tp Hồ Chí Minh, năm 2022 LỜI CẢM ƠN "Đầu tiên, em xin gửi lời cảm ơn chân thành đến Trường Đại học Giao Thông Vận Tải Phân hiệu TPHCM đưa môn học Thiết kế web vào trương trình giảng dạy Đặc biệt, em xin gửi lời cảm ơn sâu sắc đến giảng viên môn – Thầy Nguyễn Lê Minh dạy dỗ, truyền đạt kiến thức quý báu cho em suốt thời gian học tập vừa qua Trong thời gian tham gia lớp học Thiết kế web thầy, em có thêm cho nhiều kiến thức bổ ích, tinh thần học tập hiệu quả, nghiêm túc Đây chắn kiến thức quý báu, hành trang để em vững bước sau Bộ môn Thiết kế web môn học thú vị, vơ bổ ích có tính thực tế cao Đảm bảo cung cấp đủ kiến thức, gắn liền với nhu cầu thực tiễn sinh viên Tuy nhiên, vốn kiến thức nhiều hạn chế khả tiếp thu thực tế nhiều bỡ ngỡ Mặc dù em cố gắng chắn tiểu luận khó tránh khỏi thiếu sót nhiều chỗ cịn chưa xác, kính mong thầy xem xét góp ý để báo cáo em hoàn thiện hơn.  Em xin chân thành cảm ơn!” NHẬN XÉT CỦA GIẢNG VIÊN HƯỚNG DẪN Tp Hồ Chí Minh, ngày ….… tháng ….… năm ….… Giảng viên hướng dẫn Nguyễn Lê Minh MỤC LỤC LỜI CẢM ƠN NHẬN XÉT CỦA GIẢNG VIÊN HƯỚNG DẪN MỤC LỤC DANH MỤC CHỮ VIẾT TẮT BẢNG BIỂU, SƠ ĐỒ, HÌNH VẼ CHƯƠNG 1: MỞ ĐẦU 1.1 Tổng quan đề tài 1.2 Mục tiêu nghiên cứu 1.3 Phạm vi 1.4 Cấu trúc báo cáo 1.4.1 Chương 1: Tổng quan toán 1.4.2 Chương 2: Cơ sở lý thuyết, ứng dụng vào chương trình 1.4.3 Chương 4: Kết luận hướng phát triển CHƯƠNG 2: TÌM HIỂU NGƠN NGỮ LẬP TRÌNH C, ỨNG DỤNG VÀO CHƯƠNG TRÌNH QUẢN LÝ SINH VIÊN 2.1 Tổng quan ngôn ngữ lập trình C 2.1.1 Giới thiệu ngơn ngữ lập trình C 2.1.2 Ưu điểm 2.1.3 Nhược điểm 2.2 Ứng dụng vào chương trình quản lý sinh viên 2.2.1 Quản lý sinh viên 2.2.2 Sơ đồ phân rã chức 2.2.3 Xây dựng chương trình ngơn ngữ C 2.2.4 Một số hình ảnh minh hoạ cho chương trình CHƯƠNG 3: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 3.1 Kết luận 3.1.1 Kết luận đạt 3.1.2 Kiến nghị 3.2 Hướng phát triển PHỤ LỤC TÀI LIỆU THAM KHẢO DANH MỤC CHỮ VIẾT TẮT STT Mô tả Ý nghĩa BCPL Module Bộ phận MSSV Mã số sinh viên Ngơn ngữ lập trình Là phần xử lý yêu cầu, câu lệnh lựa Backend chọn thơng tin xác để hiển thị lên hình TK Tổng kết QT Q trình TTSV Thơng tin sinh viên Ghi BẢNG BIỂU, SƠ ĐỒ, HÌNH VẼ Sơ đồ 1: Sơ đồ phân rã chức Hình 1: Đăng nhập tài khoản Hình 2: Menu Hình 3: Thêm sinh viên Hình 4: Tìm kiếm sinh viên (Theo MSSV) 10 Hình 5: Cập nhật tài khoản đăng nhập 10 CHƯƠNG 1: LÝ THUYẾT FRONT-END (HTML, CSS, JS) CHƯƠNG 2: TÌM HIỂU NGƠN NGỮ LẬP TRÌNH C, ỨNG DỤNG VÀO CHƯƠNG TRÌNH QUẢN LÝ SINH VIÊN 2.1 Tổng quan ngôn ngữ lập trình C 2.1.1 Giới thiệu ngơn ngữ lập trình C C ngơn ngữ lập trình cấp cao, sử dụng phổ biến để lập trình hệ thống với Assembler phát triển ứng dụng Vào năm cuối thập kỷ 60 đầu thập kỷ 70 kỷ XX, Dennish Ritchie (làm việc phòng thí nghiệm Bell) phát triển ngơn ngữ lập trình C dựa ngôn ngữ BCPL (do Martin Richards đưa vào năm 1967) ngôn ngữ B (do Ken Thompson phát triển từ ngôn ngữ BCPL vào năm 1970 viết hệ điều hành UNIX máy PDP-7) cài đặt lần hệ điều hành UNIX máy DEC PDP-11 Năm 1978, Dennish Ritchie B.W Kernighan cho xuất “Ngôn ngữ lập trình C” phổ biến rộng rãi đến Những đặc điểm bản: - Tính đọng (compact): C có 32 từ khố chuẩn 40 toán tử chuẩn, hầu hết biểu diễn chuỗi ký tự ngắn gọn - Tính cấu trúc (structured): C có tập hợp thị lập trình cấu trúc lựa chọn, lặp… Từ chương trình viết C tổ chức rõ ràng, dễ hiểu - Tính tương thích (compatible): C có tiền xử lý thư viện chuẩn vô phong phú nên chuyển từ máy tính sang máy tính khác chương trình viết C hồn tồn tương thích - Tính linh động (flexible): C ngôn ngữ uyển chuyển cú pháp, chấp nhận nhiều cách thể hiện, thu gọn kích thước mã lệnh làm chương trình chạy nhanh - Biên dịch (compile): C cho phép biên dịch nhiều tập tin chương trình riêng rẽ thành tập tin đối tượng (object) liên kết (link) đối tượng lại với thành chương trình thực thi (executable) thống 2.1.2 Ưu điểm Ngơn ngữ lập trình C ngơn ngữ mạnh, mềm dẻo truy nhập vào hệ thống, nên thường sử dụng để viết hệ điều hành, trình điều khiển thiết bị, đồ họa, xây dựng phân mềm ngơn ngữ khác , … Ngơn ngữ lập trình C có cấu trúc module, từ ta phân hoạch hay chia nhỏ chương trình để tăng tính hiệu quả, rõ ràng, dễ kiểm tra chương trình 2.1.3 Nhược điểm Một số kí hiệu ngơn ngữ lập trìnhC có nhiều ý nghĩa khác Ví dụ tốn tử * toán tử nhân, toán tử thay thế, dùng khai báo trỏ Việc sử dụng đúng ý nghĩa toán tử phụ thuộc vào ngữ cảnh sử dụng Vì C ngơn ngữ mềm dẻo, việc truy nhập tự vào liệu, trộn lẫn liệu, …Từ đó, dẫn đến lạm dụng bất ổn chương trình 2.2 Ứng dụng vào chương trình quản lý sinh viên 2.2.1 Quản lý sinh viên Hiện với đời nhiều trường đại học khác nhau, số lượng sinh viên theo học trường ngày tăng lên, với số lượng sinh viên lớn việc quản lý thơng tin sinh viên địi hỏi nhiều thời gian công sức giảng viên Xây dựng chương trình quản lý sinh viên bán đưa với khả giúp quản lý, tổ chức sinh viên dễ dạng thuận tiện Người dùng – đối tượng chính: quản lý hệ thống Quản lý hệ thống có quyền cập nhật, thêm, tìm kiếm thơng tin tồn chương trình Với hệ thống “Quản lý sinh viên” người quản lý hệ thống có chức cập nhật thông tin sinh viên như: MSSV, Họ tên, Giới tính, Ngày sinh, Chuyên ngành, Lớp, Điểm, Học lực,… Quản lý sinh viên: Chương trình cho phép thêm, xố, tìm kiếm thơng tin sinh viên, xuất danh sách sinh viên, cập nhật tài khoản đăng nhập 2.2.2 Sơ đồ phân rã chức Sơ đồ 1: Sơ đồ phân rã chức Thông tin sinh viên: MSSV, họ tên, giới tính, ngày sinh,chuyên ngành, lớp, điểm QT, điểm thi 2.2.3 Xây dựng chương trình ngơn ngữ C Khai báo: - Thư viện: stdio.h , stdlib.h, string.h, conio.h, stdbool.h, windows.h - Định nghĩa: #define FILE_NAME " THONGTINSV.bin" // bin : file nhị phân - Cấu trúc Struct: typedef struct { int yyyy; int mm; int dd; } Date; typedef struct { char username[30]; char password[20]; } taikhoan; typedef struct { char mssv[11]; char hovaten[30]; char gioitinh[5]; Date ngaysinh; char chuyennganh[10]; char lop[15]; float diemQT; float diemThi; char hocluc[15]; } ttsv; Các hàm chương trình: - Hàm đồ hoạ tự định nghĩa: int whereY(); void ShowCur(bool CursorVisibility); void gotoXY(int x, int y); void SetColor(WORD color); void textcolor(int x); - Hàm thông báo: void printMessageCenter(const char* message); void headMessage(const char *message); void welcomeMessage(); - Hàm kiểm tra ngày sinh: int ktnam(int year); int ktngaysinh(Date *kiemtra); - Hàm thêm sinh viên: void themhocsinh() { ttsv them; // Khai báo biến them theo kiểu liệu ttsv int check=0; FILE *fp = NULL; fp = fopen(FILE_NAME,"ab+"); // mở file cho phép đọc ghi ‘nối đuôi’ if(fp == NULL){ // dạng nhị phân printf("Khong the mo file!!!\n"); exit(1); } … printf("\n\t\t\tMSSV : "); fflush(stdin); fgets(them.mssv,11,stdin); //fgets(char *str, int n, FILE *stream) // Đọc dòng từ Stream cho lưu trữ vào chuỗi trỏ str Nó dừng gặp điều kiện sau: (n-1) ký tự đọc, ký tự newline (dòng mới) đọc bắt gặp end-of-file … fwrite(&them,sizeof(them), 1, fp); // Ghi liệu vừa nhập vào file fclose(fp); // Đóng file printf("\n\n\n\t\t\tNhan phim bat ki de tro ve menu "); fflush(stdin); getch(); } - Hàm tìm kiếm: void timkiemtheochuyennganh(); void timkiemsinhvien(); Trong đó: int fseek(FILE *stream, long int offset, int whence);  Thiết lập vị trí file Stream tới offset cho Tham số offset xác định số byte để tìm kiếm từ vị trí where đã cho size_t fread(void *ptr, size_t size, size_t nmemb, FILE *stream);  Tổng số phần tử đọc thành công trả dạng đối tượng size_t, mà kiểu liệu nguyên Nếu số khác với tham số nmemb, lỗi xảy bắt gặp End-Of-File - Hàm xuất danh sách sinh viên: void danhsachsinhvien(); int fseek(FILE *stream, long int offset, int whence); size_t fread(void *ptr, size_t size, size_t nmemb, FILE *stream); - Hàm xoá sinh viên: void xoasinhvientheothutu(); // tương tự MSSV void xoasinhvien( ){ int tk = 0; char xoa[11]; taikhoan tttk = {0}; ttsv them = {0}; FILE *fp = NULL; FILE *tmpFp = NULL; // File tạm thời chứa thông tin fp = fopen(FILE_NAME,"rb"); //rb chi duoc doc o duoi dang nhi phan if(fp == NULL) { printf("Khong co du lieu!!!\n"); exit(1); } tmpFp = fopen("temp.bin","wb"); //wb- viet vao file tam thoi duoi dang nhi phan if(tmpFp == NULL) { fclose(fp); printf("Khong The Mo file!!!\n"); exit(1); } fread (&tttk,sizeof(taikhoan), 1, fp); // đọc tài khoản mật lưu file fwrite(&tttk,sizeof(taikhoan), 1, tmpFp); // lưu tài khoản mật vào file temp printf("\n\n\t\t\tNhap MSSV can xoa:"); fflush(stdin); fgets(xoa,11,stdin); while (fread (&them, sizeof(them), 1, fp)) // đọc file { if(strcmp(them.mssv,xoa ) != 0) // Duyệt mssv nhập vào chưa trùng với mssv duyệt lưu // thơng tin sinh viên vào file temp Lần lượt hết file { fwrite(&them,sizeof(them), 1, tmpFp); } else { tk = 1; } } (tk)? printf("\n\t\t\tXoa cong "):printf("\n\t\t\tKhong the tim thay sinh vien"); fclose(fp); fclose(tmpFp); //Xố thơng tin sinh viên cịn lại File ban đầu ( sinh viên cần xoá) remove(FILE_NAME); //Đổi tên file temp thành file ban đầu rename("temp.bin",FILE_NAME); getch(); } - Hàm cập nhật thông tin tài khoản đăng nhập: void updatetaikhoan(); Trong đó: char *strncpy(char *dest, const char *src, size_t n) dest  Đây trỏ trỏ tới mảng đích, nơi nội dung chép src  Chuỗi chép n  Số ký để chép từ src  Hàm trả cuối chuỗi chép - Hàm vẽ khung , điều khiển menu, menu: void khung(int x,int y,int w,int h,int k_color,int b_color); // vẽ khung void n_khung(int x,int y,int w,int h,int k_color,int b_color,int slc); // vẽ nhiều khung void nhapnhay(int x,int y,int w,int h,int m_color); // dấu nhấp nháy thể trỏ void chucnang(int x,int y,int w,int h); // In chức chương trình void menutinh(int vitri); // Lấy liệu từ bàn phím sử dụng câu lệnh điều kiện: // switch(){ Case : … } // để thực chức chương trình void menu(); // Là backend menu tĩnh thực chức vẽ khung, di chuyển dấu nhấp nháy, truyền giá trị địa trỏ cho menutinh - Hàm đăng nhập: void login();  Mục đích hàm cho người dùng đăng nhập tài khoản mật khẩu, sai lần chương trình cịn ngược lại đăng nhập thành cơng hiển thị menu cho người dùng lựa chọn - Hàm khởi đầu(init): nt xuatfile(const char *file); void init();  Mục đích hàm khởi tạo tài khoản mật (mặc định) cho file file khơng có thơng tin - Hàm main: int main(){ init(); // Kiểm tra file có TK MK hay chưa chưa cài lại TK MK mặc định welcomeMessage(); login(); return 0; } 2.2.4 Một số hình ảnh minh hoạ cho chương trình Hình 1: Đăng nhập tài khoản Hình 2: Menu Hình 3: Thêm sinh viên Hình 4: Tìm kiếm sinh viên (Theo MSSV) Hình 5: Cập nhật tài khoản đăng nhập CHƯƠNG 3: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 3.1 Kết luận 3.1.1 Kết luận đạt Sau trình tìm hiểu thực hiện, đề tài đáp ứng yêu cầu ban đầu đưa Xây dựng chương trình quản lý sinh viên với chức bản: - Thêm sinh viên - Tìm kiếm sinh viên - Danh sách sinh viên - Xoá sinh viên - Cập nhật tài khoản 3.1.2 Kiến nghị Do thời gian tìm hiểu, phân tích, thiết kế thực chương trình Quản lý sinh viên cịn số thiếu sót như: - Chưa đẩy đủ chức với yêu cầu chương trình quản lý sinh viên - Thiết kế chưa đáp ứng mặt thẩm mỹ - Code chưa tối ưu 3.2 Hướng phát triển Tìm hiểu kĩ kĩ thuật, câu lệnh có ngơn ngữ C Xây dựng thêm chức cần thiết khác cho chương trình PHỤ LỤC Phụ lục 1: Hướng dẫn sử dụng Người dùng truy cập đường link https://github.com/NguyenDat020403/github-bai-taplon-qlsv/tree/main để tải file testlan1.c , sử dụng phần mềm Dev C++ phần mềm chạy chương trình C khác để chạy chương trình TÀI LIỆU THAM KHẢO [1] https://vncoder.vn/bai-hoc/tong-quan-ngon-ngu-lap-trinh-c-149 Tổng quan ngơn ngữ lập trình C [2] https://quantrimang.com/ham-trong-lap-trinh-c-156118 Hàm lập trình C [3] https://www.tutorialspoint.com/cprogramming/index.htm C Tutorial ... hiểu thực hiện, đề tài đáp ứng yêu cầu ban đầu đưa Xây dựng chương trình quản lý sinh viên với chức bản: - Thêm sinh viên - Tìm kiếm sinh viên - Danh sách sinh viên - Xoá sinh viên - Cập nhật tài. .. trình quản lý sinh viên 2.2.1 Quản lý sinh viên Hiện với đời nhiều trường đại học khác nhau, số lượng sinh viên theo học trường ngày tăng lên, với số lượng sinh viên lớn việc quản lý thông tin sinh. .. HIỆU TẠI TP HỒ CHÍ MINH BỘ MƠN CƠNG NGHỆ THƠNG TIN BÁO CÁO THỰC HÀNH ĐỀ TÀI: QUẢN LÝ SINH VIÊN Giảng viên hướng dẫn: NGUYỄN LÊ MINH Sinh viên thực hiện: NGUYỄN ĐÌNH TRINH ĐẠT Lớp : CQ.62.CNTT

Ngày đăng: 14/11/2022, 19:14

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan