다음 프로그램은 연결 리스트를 만들기 위한 코드의 일부분이다.
아래 그림과 같이 두 개의 노드 first, second가 연결되었다고 가정하고, 위의 코드를 참조하여 노드 tmp를 노드 first와 노드 second 사이에 삽입하고자 할 때, 프로그램 코드로 옳은 것은?
struct node {
int number;
struct node *link;
};
struct node first;
struct node second;
struct node tmp;아래 그림과 같이 두 개의 노드 first, second가 연결되었다고 가정하고, 위의 코드를 참조하여 노드 tmp를 노드 first와 노드 second 사이에 삽입하고자 할 때, 프로그램 코드로 옳은 것은?

- ①
tmp.link = &first; first.link = &tmp;
- ②
tmp.link = first.link; first.link = &tmp;
- ③
tmp.link = &second; first.link = second.link;
- ④
tmp.link = NULL; second.link = &tmp;
선지를 골라 바로 채점해 보세요.
정답 ②
출처: 인사혁신처 공개 기출(공공데이터포털, 이용허락 제한 없음)