Lổi cấu trúc dử liệu

Thảo luận trong 'Khoa Khoa Học Máy Tính' bắt đầu bởi hapi, 30 Tháng chín 2010.

  1. hapi Thành Viên Mới

    Offline
    Số bài viết:
    22
    Đã được thích:
    1
    Điểm thành tích:
    0
    mình vừa làm bài này .chạy trơn tru.song kết quả không như ý muốn
    các bạn giúp mình nhé
    Trân trọng!
  2. hapi Thành Viên Mới

    Offline
    Số bài viết:
    22
    Đã được thích:
    1
    Điểm thành tích:
    0
    Mã:
    pà con giúp đở với  [code]
  3. hoekaka Windows 95

    Offline
    Số bài viết:
    359
    Đã được thích:
    114
    Điểm thành tích:
    90
    kết quả ko như ý là sao bạn .. kết quả bạn muốn là gì
  4. chip Thành viên sáng lập

    Offline
    Số bài viết:
    777
    Đã được thích:
    778
    Điểm thành tích:
    560
    ---->nên cho mọi người biết vấn đề ở chổ nào, và muốn mọi người giúp cái gì, không phải ai cũng có thể em nghĩ gì.
    ---->"dử liệu" là gì?
    ---->nên dùng thẻ code để đoạn code ngắn gọn và trong sáng.

    -Nếu em muốn nhập vào danh sách:

    Mã:
     do{
       printf("Nhap so:");
       scanf("%d",&x);
       if(x!=0) tao(&f,x);
       }while(x!=0);
  5. sunboy Thành viên sáng lập

    Offline
    Số bài viết:
    1.616
    Đã được thích:
    1.340
    Điểm thành tích:
    1.000
    Nói rõ đi bạn
    Bạn đang làm chương trình gì.. không như ý muốn chỗ nào..
  6. hapi Thành Viên Mới

    Offline
    Số bài viết:
    22
    Đã được thích:
    1
    Điểm thành tích:
    0
    như thế là rõ lăm rồi
    ,các anh thử chạy xem , tôi nghỉ rằng là lổi logic nhưng chưa tìm ra
  7. hoekaka Windows 95

    Offline
    Số bài viết:
    359
    Đã được thích:
    114
    Điểm thành tích:
    90
    bó tay vs bác ... bác chờ đợi kết quả gì khi chạy chương trình ở trên ... bác muốn kết quả nó hiển thị ntn mà bảo lỗi logic
  8. haihung_9x Friends

    Offline
    Số bài viết:
    353
    Đã được thích:
    271
    Điểm thành tích:
    220
    #include<stdio.h>
    #include<conio.h>
    #include<iostream.h>
    typedef struct node{
    int element;
    struct node*link;
    }list;
    void make( list *l)
    {
    l=NULL
    }
    void taods (list *l, int x)
    { list *p;
    p= new list*;
    p->element=x;
    p->link=l;
    l=p;
    void xuatds (list l)
    { list p;
    p=l;
    while (p!=NULL)
    { cout<<p->element<<" ";
    p=p->link;
    }
    cuot<<"\";
    void main ()
    {
    clrscr();
    int dk =1; char y[20];
    make l(l);
    while(dk==1)
    {
    cuot<<"x=";
    cin>>x;
    taoDS(l,x);
    cout<<"nua ko ?";
    cin>>y;
    if (y="co")
    dk=1;
    else dk=0;
    }
    getch();
    }



    while(dk) ---> chỗ này thiếu nè.. thêm while(dk==1)
  9. hoekaka Windows 95

    Offline
    Số bài viết:
    359
    Đã được thích:
    114
    Điểm thành tích:
    90
    chỗ đó là check dk để có thể cho phép nhập tiếp hay không .. vì trên đã gán dk=1 nên chỉ cần while(dk) là đủ
  10. integer Tiếu Ngạo Giang Hồ

    Offline
    Số bài viết:
    1.695
    Đã được thích:
    1.313
    Điểm thành tích:
    900
    thư viện stdio.h đã cung cấp đủ các hàm nhập xuất , bạn không cần khai báo iostream.h. cái này không gây lỗi nhưng lập trình thì không nên khai báo thừa.
    đơn giản hơn bạn dùng :
    Mã:
    count<<"\ntiep tuc: ";
    y==getch();
    if(y=="c")
  11. haihung_9x Friends

    Offline
    Số bài viết:
    353
    Đã được thích:
    271
    Điểm thành tích:
    220
    Bạn thử chạy code của mình có ra như bạn mong đợi không. :).

    nến nhớ bấm "co" để tiếp tục nhập danh sách. Muốn hiện kết quả ra thì nhấm phím bất kỳ nhá. Cơ bản là mình hiểu được thuật toán đó hay không.
  12. chip Thành viên sáng lập

    Offline
    Số bài viết:
    777
    Đã được thích:
    778
    Điểm thành tích:
    560
    haihung_9x :
    ---->code của em site về cấu trúc, không thể chạy được

    Mã:
    if (y="co")
    ---->xem lai chỗ này
  13. integer Tiếu Ngạo Giang Hồ

    Offline
    Số bài viết:
    1.695
    Đã được thích:
    1.313
    Điểm thành tích:
    900
    bạn gặp vấn đề về ngôn ngữ. cũng như phần lớn các bạn học cấu trúc dữ liệu đều gặp vấn đề về ngôn ngữ.
    quan trọng là bạn phải hiểu thuật toán.
    Bạn dùng đoạn nhập dữ liệu này đi
    Mã:
    while(dk==1)
        {
        printf("\nNhap: ");
        scanf("%d",&x);
        chen(&T,x);
        printf("Nhap tiep: (c) (k): ");
        c=getch();
        if (c=='c')
            dk=1;
        else
            dk=0;
        }
  14. haihung_9x Friends

    Offline
    Số bài viết:
    353
    Đã được thích:
    271
    Điểm thành tích:
    220
    Thank anh.

    Bạn chủ tóp pic có thể tham khảo cái mình đã edit.

    Mã:
    #include<iostream.h>
    #include<conio.h>
    typedef int ElementType;
    typedef struct Node{
    ElementType Element;
    struct Node *link;
    }List;
    void Make_L(List **first)
    {
    (*first)= NULL;
    }
    void taods(List **L, int x)
    {
    List *p;
    p=new List;
    p->Element=x;
    p->link=*L;
    *L=p;
    }
    void xuatds(List *L)
    {List *p;
    p=L;
    while (p!=NULL)
    {cout<<p->Element<<" ";
    p=p->link;
    }
    cout<<"\n";
    }
    void main()
    {
    clrscr();
    List *L;
    int x,dk=1; char y;
    Make_L(&L);
    while(dk)
    {cout<<"x=";
    cin>>x;
    taods(&L,x);
    cout<<"Co muon nhap nua khong, Bam  C de tiep tuc nhap. Bam phim bat ky de xuat danh sach. hehe. \n";
    cin>>y;
    if (y=='c')
    dk=1;
    else dk=0;
    }
    xuatds(L);
    getch();
    }
    
    
  15. NoName_DN Thành Viên Mới

    Offline
    Số bài viết:
    96
    Đã được thích:
    10
    Điểm thành tích:
    0
    Sao nó bảo chạy trơn tru được khi Vòng While ko có điều kiện mà ko báo Erro àk :)) Haiz Thật,
  16. hoekaka Windows 95

    Offline
    Số bài viết:
    359
    Đã được thích:
    114
    Điểm thành tích:
    90
    while(dk) ... không nhìn kỹ à bạn ...

Chia sẻ trang này