아래 코드는 DLL을 구성하는 코드이다.
2개 함수의 내부 (코드의 표시된 곳 (/* 이곳을 채우세요 */)를 완성하시오.
함수 addToDLL은 정수를 입력받아 DLL의 끝에 추가하는 함수이다.
포인터 head는 DLL의 맨 앞 노드를 가리키는 용도로 사용한다.
함수 getLastElement는 DLL의 마지막 노드의 주소를 반환하는 함수이다.
단, DLL이 비어 있는 경우, getLastElement는 null pointer를 반환해야 한다.
위 2개의 함수를 완성하여 제출하시오.
입력과 출력에는 신경쓰지 않아도 되며,
다른 부분의 코드를 변경하여, 부정한 의도로 점수를 얻고자 하는 경우 중간고사 전체를 0점 처리함.
#include <stdio.h> #include <stdlib.h> struct node { int v; struct node *next; struct node *prev; }; struct node *head = 0; void addToDLL(int _v) { /* 이 곳을 채우세요 */ /* 정수 _v를 DLL의 끝에 추가하는 함수 */ } struct node *getLastElement() { /* 이 곳을 채우세요 */ /* DLL에서 마지막 노드의 주소 값을 반환 */ } int main(void) { int v; struct node *temp = 0; while (1) { scanf("%d", &v); if (v == -999) { break; } addToDLL(v); } temp = getLastElement(); printf("%d", temp->prev->next->v); return 0; }