/* File: main2.c Using an ordered linked list ADT */ #include #include "list2.h" main() { list L1, L2 ; node *position ; printf("Create list with a, c, d, l & p\n") ; L1 = CreateList() ; AddItem(L1, "d") ; AddItem(L1, "l") ; AddItem(L1, "a") ; AddItem(L1, "p") ; AddItem(L1, "c") ; PrintList(L1) ; printf("\nRemove \"d\"\n") ; position = Search(L1, "d") ; Delete(L1, position) ; PrintList(L1) ; printf("\nCreate second list with a, b, d, f, g, l, m, n, x & y\n") ; L2 = CreateList() ; AddItem(L2, "a") ; AddItem(L2, "l") ; AddItem(L2, "n") ; AddItem(L2, "y") ; AddItem(L2, "d") ; AddItem(L2, "b") ; AddItem(L2, "f") ; AddItem(L2, "g") ; AddItem(L2, "x") ; AddItem(L2, "m") ; PrintList(L2) ; printf("\nMerge the two lists\n") ; MergeList(L1, L2) ; PrintList(L1) ; printf("Merged list has %d items.\n", CountList(L1)) ; printf("\nTest for membership\n") ; if (IsMember2(L1,"g")) { printf(" found g\n") ; } else { printf(" did not find g\n") ; } if (IsMember2(L1,"w")) { printf(" found w\n") ; } else { printf(" did not find w\n") ; } }