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

Đề tài: lỗi khi thao tác với stack

  1. #1
    Ngày gia nhập
    04 2012
    Bài viết
    5

    Mặc định lỗi khi thao tác với stack

    mình mong mọi người giúp mình với,, đang hocj về stack nên khi làm bài tập code toàn bị bão lỗi thui: huhu help, thanks mọi người trước nha:
    code nè:
    //

    Code:
    #include<iostream.h>
    #include<stdio.h>
    #include<conio.h>
    typedef struct stack
    {
      int top;
      int day[5];      
    };
    
    
    void gan(stack* p,int a)
    {
    
       
        if(p->top==-1)
        
        cout<<"\n stack da day ban khong the them nat ky phan tu bnao vao trong stack:\n";
        else 
        {
        
        
                   p->top=p->top++;
                   p->top=a;
              
               
        }
       return;
    }
    void lay(stack* p)
    {
    
    
        if(p->top==-1)
        
                cout<<"\n stack da rong va ban khong the lay du lieu ra:\n";
          else
          {   
              do
              {   
             
                cout<<"\n gia tri :"<<p->top;
                p->top=p->top--;
              } 
              while(p->top!=1);
    
       }
    return;
        
    }
    int main()
    {
        stack *p;
        p->top==-1;
        int a[5],i;
        for(i=0;i<5;i++)
        {
        cout<<"a["<<i<<"]=";
        cin>>a[i];
       }
       cout<<"\n gia tri:\n";
       for(i=0;i<5;i++)
       cout<<a[i];
       cout<<"\n thay vao ham:";
      gan(p,a[i]);
      cout<<"\n lay gia tri:";
      lay(p);
        fflush(stdin);
        cin.get();
        return(0);
        
    }

  2. #2
    Ngày gia nhập
    04 2012
    Bài viết
    42

    C Code:
    1. p->top==-1;
    Gán top = -1 chứ sao lại đi so sánh?

    Nếu như top == -1 là stack đang rỗng chứ không phải đầy.

    Nói chung là bạn nên coi lại cơ bản trước khi code
    C Code:
    1. while (!silly)
    2.     cout<<"Study everything !";

  3. #3
    Ngày gia nhập
    04 2012
    Bài viết
    5

    nhưng nếu viế tp->top=-1 thi chương trình báo lỗi ngay? ban thử đj

  4. #4
    Ngày gia nhập
    04 2012
    Bài viết
    42

    Bạn có phân biệt được giữa toán tử "=" và toán tử "==" không vậy?

    C Code:
    1.  stack *p;
    2.  p->top==-1;
    Chưa cấp phát con trỏ sao mà sử dụng. Nếu xây dựng stack bằng mảng thì chỉ cần khai báo stack p là được rồi.

    Bạn xem lại 4 thao tác cơ bản khi xây dựng stack:

    - isEmpty
    - isFull
    - Pop
    - Push
    C Code:
    1. while (!silly)
    2.     cout<<"Study everything !";

  5. #5
    Ngày gia nhập
    04 2012
    Bài viết
    5

    thạks bạn nhìu nha? mình vô cùng cảm ơn?hj? mình hỉu rùi

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

  1. Bài tập C++ copy noi dung tu stack S sang stack D
    Gửi bởi thaodn_chuprong trong diễn đàn Nhập môn lập trình C/C++
    Trả lời: 12
    Bài viết cuối: 18-10-2012, 11:45 PM
  2. Cấu trúc dữ liệu Chuyển các phần tử từ stack này sang stack kia như thế nào?
    Gửi bởi rukawa1184 trong diễn đàn Thắc mắc CTDL & Giải thuật
    Trả lời: 9
    Bài viết cuối: 06-12-2011, 06:52 PM
  3. Stack, ngăn xếp - Thiết lập và ứng dụng stack trong C
    Gửi bởi PoPoPoPo trong diễn đàn Thủ thuật, Tutorials CTDL & Giải thuật
    Trả lời: 8
    Bài viết cuối: 15-11-2010, 11:24 PM
  4. Stack trên C | Lỗi khó hiểu trong Stack
    Gửi bởi tom3cang 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-05-2009, 11:09 PM
  5. Code về stack | Chuyển hệ số 10 sang 2 dùng stack
    Gửi bởi ahappyboy89 trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 13
    Bài viết cuối: 17-04-2009, 09:48 AM

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