summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authormo khan <mo.khan@gmail.com>2020-07-04 15:46:19 -0600
committermo khan <mo.khan@gmail.com>2020-07-04 15:46:19 -0600
commit2c86d809386422e34899503567cd88a57d170e1b (patch)
treea6b553d9693422fefe772cd815fbb477245a1042 /src
parent3a4d12567acb3bca96e05d2fe52394f851f644de (diff)
Create program to interact with a Stack
Diffstat (limited to 'src')
-rw-r--r--src/01/01b/main.c21
-rw-r--r--src/01/01b/stack.c3
-rw-r--r--src/01/01b/stack.h1
3 files changed, 22 insertions, 3 deletions
diff --git a/src/01/01b/main.c b/src/01/01b/main.c
index 170ad11..7fb8165 100644
--- a/src/01/01b/main.c
+++ b/src/01/01b/main.c
@@ -1,7 +1,26 @@
-#include <stdio.h>
#include "stack.h"
+#include <stdio.h>
+#include <stdlib.h>
int main(int argc, char *argv[])
{
+ printf("=== COMP-272 - Assignment 1 - Question 1b ===\n");
+ Stack *stack = initialize();
+
+ for (int i = 0; i < 10; i++) {
+ int data = rand() % 1000;
+
+ printf("Push: %d\n", data);
+ push(stack, data);
+ }
+
+ printf("\n");
+ inspect(stack->q1);
+
+ while (size(stack) > 0) {
+ printf("Pop: %d\n", pop(stack));
+ inspect(stack->q1);
+ }
+ printf("Bye\n");
return 0;
}
diff --git a/src/01/01b/stack.c b/src/01/01b/stack.c
index 9c08795..7fff245 100644
--- a/src/01/01b/stack.c
+++ b/src/01/01b/stack.c
@@ -135,7 +135,7 @@ void destroy(Stack *self) {
*
* @param self the queue to print
*/
-static void inspect(Queue *self) {
+void inspect(Queue *self) {
Node *tmp = self->head;
if (self->size == 0) {
@@ -150,4 +150,3 @@ static void inspect(Queue *self) {
}
printf("\b]\n");
}
-
diff --git a/src/01/01b/stack.h b/src/01/01b/stack.h
index 752f865..036663b 100644
--- a/src/01/01b/stack.h
+++ b/src/01/01b/stack.h
@@ -28,3 +28,4 @@ void push(Stack *stack, int data);
int pop(Stack *stack);
int size(Stack *stack);
void destroy(Stack *stack);
+void inspect(Queue *self);