#include "TRA.h" void purge (LIST L) { LIST_POSITION p, q, r; p = LIST_FIRST(L); while (p != LIST_EOL(L)) { q = LIST_NEXT(L, p); while (q != LIST_EOL(L)) if (LIST_SAME(L, LIST_RETRIEVE(L, p), LIST_RETRIEVE(L, q)) ) { r = q; q = LIST_NEXT(L, q); LIST_DELETE(L, r); } else q = LIST_NEXT(L, q); p = LIST_NEXT(L, p); } } int main() { LIST oma; LIST_POSITION p; INT_LIST_CREATE(oma); LIST_CONSTRUCT_RANDOM(oma, 10, 1, 6); LIST_PRINT(oma); putchar('\n'); purge(oma); LIST_PRINT(oma); putchar('\n'); p = INT_LIST_LOCATE(oma, 3); INT_LIST_INSERT(oma, p, 6); INT_LIST_INSERT(oma, p, 3); LIST_PRINT(oma); putchar('\n'); purge(oma); LIST_PRINT(oma); putchar('\n'); LIST_FREE(oma); exit(0); }