Chào mừng đến với Diễn đàn lập trình - Cộng đồng lập trình.
Kết quả 1 đến 4 của 4
  1. #1
    Ngày tham gia
    Sep 2015
    Bài viết
    0

    Khai báo ds liên kết đơn

    Em khai báo các hàm trong ctdl giống y hệt trong giáo trình nhưng sau vẫn bị lỗi. Mấy a giải thích giùm e với.
    Mã:
    //Khai bao
    #include<conio.h>
    #include<stdio.h>
    #include<alloc.h>
    typedef int ElementType;
    typedef struct Node
    {
    	ElementType Element;
    	Node* Next;
    };
    typedef Node* Position;
    typedef Position List;
    //Tao danh sach rong
    void MakeNullList (List *Header)
    {
    	(*Header) = (Node*)malloc(sizeof(Node));
    	(*Header) -> Next = NULL;
    }
    //Kim tra ds rong
    int EmptyList (List L)
    {
    	return L->Next == NULL;
    }
    //Them pt vao vi tri p
    void InsertList (ElementType X, Position P, List *L)
    {
    	Position T;
    	T = (Node*) malloc (sizeof(Node));
    	T->Next->Element = X;
    	T->Next = P->Next;
    	P->Next = T;
    }
    //Xoa pt tai vi tri p
    void DeleteList (Position P, List L)
    {
    	if(P->Next != NULL)
    	{
    		Position T;
    		T->Next = P->Next;
    		P->Next = P->Next->Next;
    		free(T);
    	}
    	else
    		printf("
    Danh sach rong, khong the xoa!");
    }
    //Tim vi tri pt X dau tien trong ds
    Position Locate(ElementType X, List L)
    {
    	Position P = L;
    	int found = 0;
    	while (P->Next != NULL && found==0)
    	{
    		if(P->Next->Element == X)
    			found = 1;
    		else
    			P = P->Next;
    	}
    	return P;
    }
    //Lay noi dung phan tu tai vi tri p
    ElementType Retrieve(Position P, List L)
    {
    	return P->Next->Element;
    }
    //Tra ve vi tri dau tien cua ds
    Position FirstList (List L)
    {
    	return 1;//Bị lỗi chỗ này/!\
    }
    //Tra ve vi tri cuoi cung trong ds
    Position EndList (List L)
    {
    	Position P=FirstList(L);
    	while (P->Next != NULL)
    		P = P->Next;
    	return P;
    }
    //Nhap ds L tu ban phim
    void ReadList (List *L)
    {
    	ElementType X;
    	int n;
    	printf("
    Nhap so luong phan tu trong ds: ");
    		scanf("%d",&n);
    
    	for(int i=1; i<=n; i++)
    	{
    		printf("
    Phan tu thu %d: ",i);
    			scanf("%d",&X);
    			InsertList(X,EndList(*L),L);
    	}
    }
    //In ds ra man hinh
    void PrintList (List L)
    {
    	Position P = FirstList(L);
    	while(P->Next != NULL)
    	{
    		printf("\t%d",Retrieve(P,L));
    		P = P->Next;
    	}
    }
    //Chuong trinh chinh kiem tra
    void main()
    {
    	clrscr();
    	List L;
    	MakeNullList (&L);
    	printf("Nhap ds!
    ");
    		ReadList(&L);
    	printf("
    Xuat ds vua nhap!
    ");
    		PrintList(L);
    	getch();
    }

  2. #2
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    Bạn đọc lại phần kiểu trả về và dữ liệu trả về. 2 cái này phải đồng nhất


    Position FirstList (List L)
    {
    return 1;//Bị lỗi chỗ này[IMG]images/smilies/alert.gif[/IMG]
    }
    ps: Bạn nên đọc lại cách đặt tiêu đề [IMG]images/smilies/biggrin.png[/IMG]. Lần sau mình xóa chứ không di chuyển đề tài đâu [IMG]images/smilies/biggrin.png[/IMG]
    http://diendan.congdongcviet.com/showthread.php?t=19

  3. #3
    Ngày tham gia
    Feb 2014
    Bài viết
    0
    Mã:
    typedef struct Node{    ElementType Element;    Node* Next;};typedef Node* Position;typedef Position List;
    Lỗi nhá, sửa được bàn tiếp hih

  4. #4
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    Trích dẫn Gửi bởi meterpreter
    Lỗi nhá, sửa được bàn tiếp hih
    [QUOTE=meterpreter;284617]
    Mã:
    struct Node{    ElementType Element;    Node* Next;};typedef struct Node* Position;typedef Position List;
    Cá là đại ka này học chung trường với ta...giáo trình tủn hoặc là do trình dịch tủn
    tớ viết y chang giáo trình và y chang anh chàng này cũng bị lỗi và sữa thế [IMG]images/smilies/biggrin.png[/IMG]

    Position ở đây là 1 con trỏ làm sao mà
    Mã:
    return 1;
    được trời
    Sữa lại thử

    Mã:
    return L;

 

 

Quyền viết bài

  • Bạn Không thể gửi Chủ đề mới
  • Bạn Không thể Gửi trả lời
  • Bạn Không thể Gửi file đính kèm
  • Bạn Không thể Sửa bài viết của mình
  •