메모리를 동적할당해서 string 형태의 값 3개를 scanf를 통해서 넣고 

그중 2번째 값을 출력하고 싶습니다. 

abcde, fghij, klmno 를 넣으면 fghij 를 출력하게요.

어떤 형태로 동적할당을 해야 하고 어떤 값을 출력해야되나요?

char *tmp = (char*)malloc(sizeof(string)*3);

for (int i = 0; i < 3; i++){
scanf("%s", &tmp[i]);
}

printf("%s",tmp[1]);

free(tmp);

이렇게 하니 안되네요  char 를 string으로 다 바꿔도 안돼요 ㅠㅠ

저 동적할당에 넣은 값들은 출력만 할게 아니고 

갖다가 순서도 정렬하고 그래야돼서

배열 하나로 가르키는 방법이 있으면 좋겠는데 어떻게 해야 될까요 ㅠ