Công cụ bảo vệ mã nguồn .NET mạnh nhất, không thể unpack, miễn phí cho các khách hàng đầu tiên đăng ký.
Từ 1 tới 1 trên tổng số 1 kết quả

Đề tài: thắc mắc về list struct -- C language

  1. #1
    Ngày gia nhập
    07 2018
    Bài viết
    1

    Exclamation thắc mắc về list struct -- C language

    Xin chào tất cả mọi người. Mình hiện đang học về ngôn ngữ C và có bài tập khá khoai với trình độ của mình bây giờ + ông thầy giảng hơi qua loa khiến mình vẫn chưa hiểu lắm. Mong mọi người giúp mình làm bài này

    Chả là mình có một struct như sau

    Code:
    struct member {
       int number; //ma so nhan vien
       char name[50]; //ten nhan vien
       sturct member *next;
    };
    struct member *allocBox(int number, char *name, struct member *tail); //struct de nhap ma so nhan vien va ten nhan vien
    void display_all(struct member *head); //sau khi dang ki xong thi hien thi toan bo nhan vien len
    mục tiêu là sau khi nhập 'quit' thì mới ngừng nhập tên nhân viên và khi hiển thị thì sẽ hiển thì theo số 'number' thứ tự đã nhập.
    //------------------------------------------------------------------------------
    trong cái struct member thì sẽ phân ra và nhét vào địa chỉ new_pt
    sau đó chuyển sang cho tail->next =new_pt tới khi kết thúc chương trình thì sẽ return về new_pt
    //-----------------------------------------------------------------------------
    còn cái void display_all này thì nó sẽ hiển thị toàn bộ nội dung đã nhập từ head tới cuối vào giữa struct member. Nghĩa là có thể viết là display_all(head) hoặc display_all(head->next) cũng được.
    //------------------------------------------------------------------------------
    đại khái nó sẽ có dạng như thế này

    Code:
    struct member *HEAD, *TAIL;
    
    int main(void) {
            int i;
            char name[50];
            HEAD = TAIL = NULL;
            do {
                    printf("Input name > ");
                    scanf("%s", name);
                    if (strcmp(name, "quit") != 0) {
                            TAIL = allocBox(i, name, TAIL);
                            if (HEAD == NULL) HEAD = TAIL;
                            i++;
                    }
            }while(strcmp(name, "quit")!=0);
           .....
           return 0;
    }
    ông thầy chỉ gợi ý tới chỗ này thôi mà thứ 6 phải nộp rồi mà mình vẫn chưa nghĩ ra được cách làm, bạn nào có lòng hảo tâm giúp mình với
    Công cụ bảo vệ mã nguồn .NET mạnh nhất hiện tại, miễn phí cho các khách hàng đầu tiên đăng ký.
    Đã được chỉnh sửa lần cuối bởi MHoang : 16-08-2018 lúc 05:41 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