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

Đề tài: Danh sách liên kết

  1. #1
    Ngày gia nhập
    11 2008
    Bài viết
    0

    Mặc định Danh sách liên kết

    Mình đang làm ct quản lý sv dùng dslk.Mình có 1 số điều còn chưa rõ mong mọi người giải đáp giúp:
    1,Mình đã có khai báo cho phần quản lý về sinh viên:
    Code:
    struct ngaysinh
    {
    int d; //ngay
    int m; //thang
    int y; //nam
    };
    struct data
    {
    char MSV[10]; // Ma Sinh Vien (SV)
    char ht[40]; // Ho Ten SV
    ngaysinh NS; // Ngay sinh of SV !
    char lop[20]; // Lop
    
    } ;
    h mình muốn tạo thêm phần quản lý điểm cho sinh viên với yêu cầu là kiếm tra môn đó có tồn tại không?( tên môn thì mình nghĩ là mình sẽ lưu ra file 1 danh sách để kiểm tra).Sau khi có môn đó thì bắt đầu nhập điểm cho từng môn.Tạm thời mình chỉ giới hạn là mỗi lần nhập điểm mình sẽ chỉ nhập cho 1 sv thôi.
    -Nếu tạo 1 dslk nữa cho môn học thì mình không biết làm thế nào để liên kết 2 danh sách lại
    Giờ mình hơi rối trí nên cũng không nghĩ ra nên khai báo thêm thế nào.Mong mọi người gợi ý phần khai báo.
    Đã được chỉnh sửa lần cuối bởi Skydreamer : 16-12-2008 lúc 11:55 AM.

  2. #2
    Ngày gia nhập
    07 2008
    Nơi ở
    /media/Anime
    Bài viết
    2,288

    Trong lớp sinh viên đang tạo một thuộc tính là danhsachmonhoc có kiểu là kiểu con trỏ trỏ đến danh sách môn học của sinh viên đó.
    Càng yêu mèo thì mèo càng mập. Mèo càng mập ta lại càng yêu.

  3. #3
    Ngày gia nhập
    11 2008
    Bài viết
    0

    Phiền bạn nói rõ hơn đc không?.Vậy là mình sẽ tạo 1 dslk nữa cho môn học? dùng con trỏ có thuộc tính là danhsachmonhoc để liên kết 2 ds lại ?

  4. #4
    Ngày gia nhập
    07 2008
    Nơi ở
    /media/Anime
    Bài viết
    2,288

    Một học sinh thì có nhiều môn học đúng ko ? Nếu vậy thì phải cần một dslk để lưu trữ các môn học đó. Lớp hocsinh sẽ truy xuất đến monhoc thông qua con trỏ trỏ đến dslk lưu trữ môn học.
    Càng yêu mèo thì mèo càng mập. Mèo càng mập ta lại càng yêu.

  5. #5
    Ngày gia nhập
    11 2008
    Bài viết
    0

    Thật tình là mình không hiểu chỗ làm thế nào để con trỏ truy xuất đến ds của môn học.Ai có thể vd cho mình 1 vd nhỏ đc không?

  6. #6
    Ngày gia nhập
    09 2007
    Bài viết
    724

    Mặc định Danh sách liên kết

    Trích dẫn Nguyên bản được gửi bởi Skydreamer Xem bài viết
    Thật tình là mình không hiểu chỗ làm thế nào để con trỏ truy xuất đến ds của môn học.Ai có thể vd cho mình 1 vd nhỏ đc không?
    con trỏ là một biến dùng để lưu địa chỉ của biến khác.
    ví dụ: bạn có quen 1 nhỏ, nó cực xinh, nhưng bạn lại hay quên, bạn nhờ thằng bạn khác nhớ giùm cho bạn địa chỉ nhà con nhỏ đó . sau này ai hỏi bạn nhà con nhỏ đó, bạn nói thằng bạn của bạn chỉ địa chỉ nhà nhỏ đó cho người hỏi bạn.

    nói hơi khó hiểu đưa code ra luôn
    Code:
    int main()
    {
          int girl = 1;
          int *banthan = new int;
         banthan = &girl;
          int d = *p;
          cout<< girl << "\n" << banthan << "\n" << *banthan << "\n" << d;
          delete banthan; // xong chuyện cho thằng bạn thân " đi bụi ", không nó nhớ mò tới thì đi teo luôn.
          return 1;
    }
    Sak hiểu sai câu hỏi, Edit phát

    Nếu bạn đã học danh sách liên kết rồi thì bạn sẽ hiểu.
    ví dụ nhé

    C++ Code:
    1.  
    2. typedef struct _dsmh{
    3.  std::string sTenMonHoc;
    4.  int iHocKy;
    5. }DSMH;
    6.  
    7. typedef struct _sv{
    8.   std::string sHoTen;
    9.   float flDiemTichLuy;
    10.   DSMH *dsmh;
    11.   _sv * pNext;
    12. }*SV;

    khi cần làm việc chỉ nói 1 cái;
    đã có danh sách môn học rồi .
    --> bạn chỉ cần:

    C++ Code:
    1.  
    2. DSMH *pdsMH = new DSMH[10]; // giả bộ 10 môn
    3. NhapDanhSachMonHoc(pdsMH);
    4. //khi xuống đây bạn đã có dữ liệu của danh sách các môn học cho sinh viên đó
    5. memcpy(sv->dsmh, pdsMH,sizeof(pdsMH));

    Edit: thiếu sizeof(pdsMH) trong memcpy
    Đã được chỉnh sửa lần cuối bởi zkday2686 : 17-12-2008 lúc 06:01 PM.

  7. #7
    Ngày gia nhập
    11 2008
    Bài viết
    0

    memcpy là hàm để copy string đúng ko?.Mình định làm ds môn theo dslk thì có copy được không nhỉ.Hàm này mình mới biết.

  8. #8
    Ngày gia nhập
    09 2007
    Bài viết
    724

    Đây là demo chính thức
    (chỉ là demo cho bạn hiểu, còn code thì tự chơi nhé )

    đây là hàm memcpy và một số hàm về mem: http://www.java-samples.com/showtuto...tutorialid=591


    C++ Code:
    1.  
    2. #include "stdafx.h"
    3. #include <iostream>
    4. #include <string>
    5.  
    6. using namespace std;
    7.  
    8. typedef struct _sv
    9. {
    10.     std::string sHoten;
    11.     float dtb;
    12. }Sv;
    13.  
    14. void Nhap(Sv *pSv)
    15. {
    16.     cout<<"\nNhap sv:";
    17.     cin >>pSv->sHoten;
    18.     cout<< "\nNhap diem:";
    19.     cin>>pSv->dtb;
    20. }
    21.  
    22. void Xuat(Sv *pSv)
    23. {
    24.     cout<<"Ho Ten:" << pSv->sHoten << endl;
    25.     cout<<"Diem TB:" << pSv->dtb << endl;
    26. }
    27.  
    28. int main(int argc, _TCHAR* argv[])
    29. {
    30.     Sv *pSv = new Sv;
    31.     Nhap(pSv);
    32.     Sv *pSv1 = new Sv;
    33.     memcpy(pSv1,pSv,sizeof(Sv));
    34.     Xuat(pSv1);
    35.  
    36.     system("pause");
    37.  
    38.     delete pSv;
    39.     delete pSv1;
    40.     return EXIT_SUCCESS;
    41. }

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

  1. Hướng dẫn Biểu diễn thích hợp bằng danh sách liên kết đơn hoặc danh sách liên kết kép
    Gửi bởi maitrung trong diễn đàn Thủ thuật, Tutorials CTDL & Giải thuật
    Trả lời: 3
    Bài viết cuối: 04-08-2012, 08:01 PM
  2. Cấu trúc dữ liệu Cách tạo danh sách liên kết mới từ danh sách liên kết đã cho như thế nào?
    Gửi bởi giacmo1612 trong diễn đàn Thắc mắc CTDL & Giải thuật
    Trả lời: 2
    Bài viết cuối: 30-11-2011, 04:43 PM
  3. Nhập và xuất danh sách liên kết lồng danh sách liên kết?
    Gửi bởi nvluong_it trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 1
    Bài viết cuối: 22-04-2011, 11:30 AM
  4. Lập trình C Danh sách liên kết - Xử lý danh sách liên kết trong lập trình C
    Gửi bởi phucduan trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 1
    Bài viết cuối: 08-11-2010, 10:25 PM
  5. Danh sách liên kết, code nhập danh sách sinh viên có lỗi làm sao sửa?
    Gửi bởi acmilan trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 1
    Bài viết cuối: 10-04-2009, 08:24 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