Từ 1 tới 4 trên tổng số 4 kết quả

Đề tài: Quản lý hàng hóa trong 1 kho hàng bằng "cấu trúc danh sách"

  1. #1
    Ngày gia nhập
    09 2011
    Bài viết
    1

    Mặc định Quản lý hàng hóa trong 1 kho hàng bằng "cấu trúc danh sách"

    Quản lý hàng hóa trong 1 kho hàng bằng "cấu trúc danh sách"
    Thông tin cần quản lý gồm : mã hàng, tên hàng, loại hàng, số lượng, ngày nhập, đơn giá.
    Thao tác quản lý bao gồm :
    - Nhập hàng vào kho
    - Xuất hàng
    - Tìm kiếm 1 mặt hàng
    - Cập nhật thông tin
    - In danh sách hàng hóa còn trong kho, số lượng mỗi mặt hàng
    - In danh sách các mặt hàng đã hết
    - Mặt hàng cao giá nhất, thấp giá nhất

    Mấy anh xem giúp em cái bài này

  2. #2
    Ngày gia nhập
    09 2011
    Bài viết
    1

    cho code sửa cho!!!

  3. #3
    Ngày gia nhập
    09 2011
    Nơi ở
    HCM
    Bài viết
    11

    Trích dẫn Nguyên bản được gửi bởi sinhvienit Xem bài viết
    Quản lý hàng hóa trong 1 kho hàng bằng "cấu trúc danh sách"
    Thông tin cần quản lý gồm : mã hàng, tên hàng, loại hàng, số lượng, ngày nhập, đơn giá.
    Thao tác quản lý bao gồm :
    - Nhập hàng vào kho
    - Xuất hàng
    - Tìm kiếm 1 mặt hàng
    - Cập nhật thông tin
    - In danh sách hàng hóa còn trong kho, số lượng mỗi mặt hàng
    - In danh sách các mặt hàng đã hết
    - Mặt hàng cao giá nhất, thấp giá nhất

    Mấy anh xem giúp em cái bài này
    code đi bạn nếu không hiểu hoặc lỗi gì thì lên dd hỏi chứ bạn bê cả bài lên nhờ làm thì ai có thời gian code cho bạn đâu.

  4. #4
    Ngày gia nhập
    10 2011
    Bài viết
    5

    C Code:
    1. #include<stdio.h>
    2. #include<conio.h>
    3. #include<string.h>
    4. #include<stdlib.h>
    5. struct mathang
    6. {
    7.     int maso;
    8.     char tenhang[100];
    9.     float dongia;
    10.     int soluong;
    11. };
    12. //-----------------------------------------------------------------------
    13. void nhapThongtinMathangMoi(mathang dsmh[], int *n);
    14. void inDanhsachMathang(mathang dsmh[], int n);
    15. int timMathangTheoTen(mathang dsmh[], int n, char *tencantim);
    16. void suaMathangTheoTen(mathang dsmh[], int n, char *tenhangcansua);
    17. void xoaMathangTheoTen(mathang dsmh[], int *n, char *tenhangcanxoa);
    18. void sapxepTheoGia(mathang dsmh[], int n );
    19. //-----------------------------------------------------------------------
    20. void main()
    21. {
    22.     struct mathang mh;
    23.     struct mathang khohang[100];
    24.     char tenhang[100];
    25.     int n=0;
    26.     int vitri;
    27.     int chon;
    28. do 
    29. {  
    30.     clrscr;
    31.     printf("\n**************************************************");
    32.     printf("\n* 1.Them mat hang moi                            *");
    33.     printf("\n* 2.Sua thong tin mat hang                       *");
    34.     printf("\n* 3.Xoa thong tin mat hang                       *");
    35.     printf("\n* 4.Tim mat hang theo ten                        *");
    36.     printf("\n* 5.Sap xep danh sach theo gia mat hang          *");
    37.     printf("\n* 6.In danh sach mat hang                        *");
    38.     printf("\n* 7.Thoat chuong trinh                           *");
    39.     printf("\n**************************************************");
    40.    
    41.     printf("\n\nBan chon chuc nang nao ? :");
    42.     scanf("%d", &chon);
    43.    
    44.     switch(chon)
    45.     {
    46.         case 1:
    47.             nhapThongtinMathangMoi(khohang, &n);
    48.             break;
    49.            
    50.         case 2:
    51.             printf("\nMhap ten hang can sua:");
    52.             fflush(stdin);
    53.             gets(tenhang);
    54.             suaMathangTheoTen(khohang, n, tenhang);
    55.             break;
    56.            
    57.         case 3:
    58.             printf("\nMhap ten hang can xoa:");
    59.             fflush(stdin);
    60.             gets(tenhang);
    61.             xoaMathangTheoTen(khohang, &n, tenhang);
    62.             break;
    63.            
    64.         case 4:
    65.             printf("\nMhap ten hang can tim:");
    66.             fflush(stdin);
    67.             gets(tenhang);
    68.             vitri=timMathangTheoTen(khohang, n, tenhang);
    69.            
    70.             if(vitri>-1)
    71.                 {
    72.                     printf("\n%6s  %-25s %8s %10s %15s","MA", "TEN MAT HANG", "S.LUONG","D.GIA","T.TIEN"); 
    73.                     mh=khohang[vitri]; 
    74.                     printf("\n%6d  %-25s %8d %10.2f %15.2f",mh.maso, mh.tenhang, mh.soluong,mh.dongia,mh.soluong*mh.dongia);               
    75.                 }
    76.             else
    77.                 printf("\nKhong tim thay mat hang nay trong kho !");
    78.             break;
    79.         case 5:
    80.             sapxepTheoGia(khohang, n );
    81.             break;
    82.         case 6:
    83.             inDanhsachMathang( khohang,  n);
    84.             break;
    85.         case 7:
    86.             exit(0);
    87.             break;
    88.         default:
    89.             printf("\nBan chon sai chuc nang !!!");
    90.     }  
    91.     getch();
    92. }
    93. while(true);
    94. }
    95. //-----------------------------------------------------------------------
    96. void nhapThongtinMathangMoi(mathang dsmh[], int *n)
    97. {
    98.     struct mathang mh;
    99.     printf("\nNhap thong tin mat hang moi:");
    100.     printf("\nNhap ma hang:");
    101.     scanf("%d", &mh.maso);
    102.     fflush(stdin);
    103.     printf("Nhap ten hang:");
    104.     gets(mh.tenhang);  
    105.     printf("Nhap don gia:");
    106.     scanf("%f", &mh.dongia);
    107.     printf("Nhap so luong:");
    108.     scanf("%d", &mh.soluong);
    109.    
    110.     //Luu thong tin mat hang vua nhap vao vi tri n cua mang
    111.     dsmh[*n]=mh;
    112.     //Tang n them 1
    113.     (*n)++;    
    114. }
    115. //-----------------------------------------------------------------------
    116. void inDanhsachMathang(mathang dsmh[], int n)
    117. {
    118.     struct mathang mh;
    119.     double tong=0;
    120.     printf("\n%5s %6s  %-25s %8s %10s %15s","STT","MA", "TEN MAT HANG", "S.LUONG","D.GIA","T.TIEN");
    121.     for(int i=0; i<n; i++)
    122.     {
    123.         mh=dsmh[i];
    124.         printf("\n%5d %6d  %-25s %8d %10.2f %15.2f",i+1,mh.maso, mh.tenhang, mh.soluong,mh.dongia,mh.soluong*mh.dongia);
    125.         tong+=mh.soluong*mh.dongia;
    126.     }
    127.     printf("%60s %.2f","Tong cong:",tong);
    128. }
    129. //-----------------------------------------------------------------------
    130. int timMathangTheoTen(mathang dsmh[], int n, char *tencantim)
    131. {
    132.     struct mathang mh;
    133.     for(int i=0; i<n; i++)
    134.     {
    135.         mh=dsmh[i];        
    136.         if(strcmp(mh.tenhang,tencantim)==0)
    137.             return i;   //tra ve vi tri tim thay
    138.     }
    139.     return -1; //tra ve -1 neu khong tim thay
    140. }
    141. //-----------------------------------------------------------------------
    142. void suaMathangTheoTen(mathang dsmh[], int n, char *tenhangcansua)
    143. {
    144.     int vitri;
    145.     //tim ra vi tri cua mat hang can sua
    146.     vitri=timMathangTheoTen(dsmh, n, tenhangcansua);
    147.     if(vitri>-1)
    148.     {
    149.         struct mathang mh;
    150.         printf("\nNhap thong tin moi mat hang can sua:");
    151.         printf("\nNhap ma hang:");
    152.         scanf("%d", &mh.maso);
    153.         fflush(stdin);
    154.         printf("Nhap ten hang:");
    155.         gets(mh.tenhang);  
    156.         printf("Nhap don gia:");
    157.         scanf("%f", &mh.dongia);
    158.         printf("Nhap so luong:");
    159.         scanf("%d", &mh.soluong);
    160.        
    161.         //Luu thong tin mat hang vua nhap vao vi tri n cua mang
    162.         dsmh[vitri]=mh;
    163.         printf("\nThong tin mat hang da duoc cap nhap");
    164.     }
    165.     else
    166.         printf("\nKhong tim thay");
    167. }
    168. //-----------------------------------------------------------------------
    169. void xoaMathangTheoTen(mathang *dsmh, int *n, char *tenhangcanxoa)
    170. {
    171.     int vitri;
    172.     //tim ra vi tri cua mat hang can xoa
    173.     vitri=timMathangTheoTen(dsmh, *n, tenhangcanxoa);
    174.     if(vitri>-1)
    175.     {
    176.         for(int i=vitri; i<*n-1; i++)
    177.             dsmh[i]=dsmh[i+1];
    178.         *n=*n-1;
    179.         printf("\nThong tin mat hang da duoc xoa khoi kho hang");
    180.     }
    181.     else
    182.         printf("\nKhong tim thay");
    183. }
    184. //-----------------------------------------------------------------------
    185.  
    186. void sapxepTheoGia(mathang dsmh[], int n )
    187. {
    188.     int i,j;
    189.     struct mathang mh;
    190.     for( i=0; i<n-1; i++)
    191.         for( j=i+1 ;j<n; j++)
    192.         if(dsmh[i].dongia>dsmh[j].dongia)
    193.         {
    194.             mh=dsmh[i];
    195.             dsmh[i]=dsmh[j];
    196.             dsmh[j]=mh;
    197.         }
    198. }

Các đề tài tương tự

  1. Problems : " recover tree " with input as " preorder" and "inorder"
    Gửi bởi HoangManhHa1991 trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 16
    Bài viết cuối: 13-04-2011, 10:19 PM
  2. cấu trúc case "$1" in esac trong shell ?
    Gửi bởi haian trong diễn đàn Thắc mắc lập trình shell Linux
    Trả lời: 3
    Bài viết cuối: 20-03-2011, 01:05 AM
  3. chuyển xâu theo cấu trúc "ho...dem..ten" sang "ten...ho..dem"
    Gửi bởi hoangminh1190 trong diễn đàn Nhập môn lập trình C/C++
    Trả lời: 4
    Bài viết cuối: 15-01-2009, 07:16 PM

Quyền hạn của bạn

  • Bạn không thể gửi đề tài mới
  • Bạn không thể gửi bài trả lời
  • Bạn không thể gửi các đính kèm
  • Bạn không thể chỉnh sửa bài viết của bạn