C언어 이중 연결 관련 질문합니다.

#include stdio.h
#include stdlib.h
typedef struct poo{

struct poo* llink;
int data;
struct poo* rlink;

}List;List *createNode()
{
List *L;

L=(List *)malloc(sizeof(List));

L-llink=NULL;
L-rlink=NULL;

return L;

}
void raddNode(List *L, int data) // 오른쪽
{
List *p,*n;
n=createNode();

n-data=data;

p=L;

while(p-rlink!=L-rlink){

p=p-rlink;
}
p-rlink=n;
}
void laddNode(List* L, int data) //왼쪽
{
List *p,n;

n=createNode();

n-data=data;

p=L-llink;

while(p-llink != NULL)
{
p=p-llink;

}

p-llink=n;

}

//오른쪽
void rprintNode(List* L)
{
List* p;

p=L-rlink;

while(p-rlink != NULL){
p=p-rlink;

printf(%5d, p-data);
} printf(\n);
}
//왼쪽
void lprintNode(List* L)
{
List *p;

p=L-llink;

while(p-llink != NULL)
{
p=p-llink;

printf(%5d,p-data);

}printf(\n);

}

int main(int argc, char *argv[])
{
ListNode *L;

L=createNode();

for(i=1; i3; i++)
{
raddNode(L,i);
laddNode(L,i);

}

rprintNode(L);
lprintNode(L);

system(PAUSE);
return 0;
}-질문 내용 -소스는 위에 있습니다.재가 원하는것은 구조체 하나를 이용해서 오른쪽 3 2 1
왼쪽 1 2 3 여렇게 출력되는것입니다. 이중 연결을 이용해서 해야돼구요..저기에서 뭐가 잘못되었느지.. ㅠㅠ 컴파일 하면 출력이 안되네요

C언어 다른 글

목록