(C언어) 원형 연결 리스트의 첫 번째 노드 삽입 알고리즘
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 | #include<stdio.h> #include<stdlib.h> #include<string.h> struct List { char strData[11]; struct List *nextList; }; struct CircleList { struct List *List; }; void insertFirstNode(struct CircleList *list, char *x); void main() { struct CircleList CL = { NULL }; insertFirstNode(&CL, "apple"); insertFirstNode(&CL, "Banana"); insertFirstNode(&CL, "Orange"); struct List* temp = CL.List; do { printf("%s\t", temp->strData); temp = temp->nextList; } while (temp != CL.List); return; } void insertFirstNode(struct CircleList *list, char *x){ struct List* newNode; newNode = (List*)malloc(sizeof(List)); newNode->nextList = NULL; strcpy(newNode->strData, x); strcpy(newNode->strData, x); if (list->List == NULL) { list->List = newNode; newNode->nextList = newNode; } else { List *temp = list->List; while (temp->nextList != list->List) { temp = temp->nextList; } newNode->nextList = temp->nextList; temp->nextList = newNode; list->List = newNode; } } | cs |
출력화면
[출처] (C언어) 원형 연결 리스트의 첫 번째 노드 삽입 알고리즘|작성자 길가다주은노트북
'프로그래밍 > C' 카테고리의 다른 글
(C언어) 후위표기 수식의 연산 프로그램 (0) | 2016.07.09 |
---|---|
(C언어) 이중 연결 리스트의 원소 삭제 알고리즘 (0) | 2016.07.09 |
(C언어) 연결형 리스트 탐색 알고리즘 구현 (0) | 2016.07.09 |
(C언어) 함수, 배열, 포인터, 구조체 (0) | 2016.07.09 |
(C언어) 배열 연습 문제 (0) | 2016.07.09 |