-
Notifications
You must be signed in to change notification settings - Fork 0
/
ListClient.c
78 lines (66 loc) · 1.71 KB
/
ListClient.c
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
https://powcoder.com
代写代考加微信 powcoder
Assignment Project Exam Help
Add WeChat powcoder
/****************************************************************************************
* ListClient.c
* Test client for List ADT
*****************************************************************************************/
#include<stdio.h>
#include<stdlib.h>
#include"List.h"
int main(int argc, char* argv[]){
List A = newList();
List B = newList();
List C = NULL;
int i;
for(i=1; i<=20; i++){
append(A,i);
prepend(B,i);
}
printList(stdout,A);
printf("\n");
printList(stdout,B);
printf("\n");
for(moveFront(A); index(A)>=0; moveNext(A)){
printf("%d ", get(A));
}
printf("\n");
for(moveBack(B); index(B)>=0; movePrev(B)){
printf("%d ", get(B));
}
printf("\n");
C = copyList(A);
printf("%s\n", equals(A,B)?"true":"false");
printf("%s\n", equals(B,C)?"true":"false");
printf("%s\n", equals(C,A)?"true":"false");
moveFront(A);
for(i=0; i<5; i++) moveNext(A); // at index 5
insertBefore(A, -1); // at index 6
for(i=0; i<9; i++) moveNext(A); // at index 15
insertAfter(A, -2);
for(i=0; i<5; i++) movePrev(A); // at index 10
delete(A);
printList(stdout,A);
printf("\n");
printf("%d\n", length(A));
clear(A);
printf("%d\n", length(A));
freeList(&A);
freeList(&B);
freeList(&C);
return(0);
}
/*
Output of this program:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
false
false
true
1 2 3 4 5 -1 6 7 8 9 11 12 13 14 15 -2 16 17 18 19 20
21
0
*/