Tạo bởi Trần Văn Điêp|
Lập Trình C

Quản lý đồ điện tử - Lập trình C

1. Khai báo cấu trúc dữ liệu

Định nghĩa một cấu trúc có tên spdientu_st gồm các thành phần sau:

struct spdientu_st { char ten[20]; char ma[15]; long int gia; char nhasx[20]; };

Trong hàm main(), khai báo một mảng gồm 3 sản phẩm điện tử theo cấu trúc trên, có tên là danhsachsp.


2. Tạo Menu chức năng

Chương trình hiển thị Menu như sau:

========= MENU ========= 1. Nhap du lieu cua tung san pham 2. Sap xep va hien thi thong tin chi tiet cua tung san pham theo ten (Z -> A), thong ke theo nha san xuat 3. Tim san pham theo nha san xuat 4. Ghi vao tap tin nhi phan spdientu.dat 5. Thoat ========================

Người dùng nhập lựa chọn (1–5) để thực hiện chức năng tương ứng.


3. Nhập dữ liệu của từng sản phẩm

Khi chọn 1 từ Menu, chương trình yêu cầu nhập thông tin cho từng sản phẩm như sau:

Ví dụ minh họa:

Nhap san pham 1: Ten: Tivi LCD Ma: KDL40EX520 Nha san xuat: Sony Gia: 18000000

Yêu cầu kỹ thuật:

  • Viết hàm riêng để nhập dữ liệu.

  • Hàm sử dụng tham biến là mảng cấu trúc spdientu_st.

  • Lưu các giá trị người dùng nhập vào mảng danhsachsp trong hàm main().


4. Sắp xếp và hiển thị danh sách sản phẩm

Khi chọn 2 từ Menu:

  • Sắp xếp danh sách sản phẩm theo tên sản phẩm theo thứ tự giảm dần (Z → A).

  • Sau đó hiển thị danh sách ra màn hình theo định dạng sau:

STT || Ten || Ma || Nha san xuat || Gia ------------------------------------------------------------ 001 || Tivi LCD || KDL40EX520 || Sony || 18000000 002 || Iphone 5 || IP5 || Apple || 15000000 003 || Camera || DSC-S3000 || Sony || 4200000

Sau khi in danh sách, hiển thị thống kê số lượng sản phẩm theo nhà sản xuất, ví dụ:

Nha san xuat Sony co 2 san pham Nha san xuat Apple co 1 san pham

Yêu cầu kỹ thuật:

  • Viết hàm riêng để thực hiện chức năng này.

  • Hàm sử dụng tham biến là con trỏ đến cấu trúc spdientu_st.


5. Tìm sản phẩm theo nhà sản xuất

Khi chọn 3 từ Menu, chương trình yêu cầu người dùng nhập tên nhà sản xuất:

Nhap nha san xuat: Sony

Sau đó, chương trình hiển thị tất cả sản phẩm thuộc nhà sản xuất này theo cùng định dạng như phần 4.

Nếu không tìm thấy sản phẩm nào, in thông báo:

Khong co san pham cua nha san xuat nay

Yêu cầu kỹ thuật:

  • Viết hàm riêng để thực hiện chức năng tìm kiếm.

  • Hàm sử dụng tham biến là con trỏ cấu trúc spdientu_st.


6. Ghi dữ liệu vào tập tin nhị phân

Khi chọn 4 từ Menu:

  • Ghi toàn bộ thông tin sản phẩm trong mảng danhsachsp vào tập tin nhị phân có tên spdientu.dat.

Yêu cầu kỹ thuật:

  • Viết hàm riêng để thực hiện chức năng này.

  • Hàm sử dụng tham biến là mảng cấu trúc spdientu_st.

  • Các bước cần thực hiện:

    1. Mở (hoặc tạo mới) file nhị phân spdientu.dat.

    2. Ghi toàn bộ dữ liệu sản phẩm vào file.

    3. Đóng file sau khi ghi xong.


7. Thoát chương trình

Khi chọn 5 từ Menu, chương trình kết thúc.


Gợi ý triển khai

  • Sử dụng fwrite() để ghi file nhị phân.

  • Sử dụng strcmp() để sắp xếp theo tên sản phẩm.

  • Sử dụng scanf() hoặc fgets() để nhập dữ liệu (tránh gets()).

  • Dùng vòng lặp for để duyệt mảng sản phẩm.

  • Có thể tạo các hàm con như:

    • void nhapSanPham(struct spdientu_st danhsach[], int n);

    • void hienThiDanhSach(struct spdientu_st danhsach[], int n);

    • void sapXepTheoTen(struct spdientu_st danhsach[], int n);

    • void thongKeTheoNSX(struct spdientu_st danhsach[], int n);

    • void timTheoNSX(struct spdientu_st *danhsach, int n);

    • void ghiFile(struct spdientu_st danhsach[], int n);

Phản hồi từ học viên

5

Tổng 0 đánh giá

Đăng nhập để làm bài kiểm tra

Chưa có kết quả nào trước đó