Untitled
unknown
plain_text
a year ago
1.7 kB
46
Indexable
#include <stdio.h>
#define MAX 5
int stack[MAX];
int top = -1;
// Function to push an element
void push(int value) {
if (top == MAX - 1) {
printf("Stack Overflow! Cannot push %d\n", value);
} else {
stack[++top] = value;
printf("%d pushed to stack\n", value);
}
}
// Function to pop an element
int pop() {
if (top == -1) {
printf("Stack Underflow! Cannot pop\n");
return -1;
} else {
int value = stack[top--];
printf("%d popped from stack\n", value);
return value;
}
}
// Function to peep (peek) at the top element
int peep() {
if (top == -1) {
printf("Stack is empty\n");
return -1;
} else {
printf("Top element is %d\n", stack[top]);
return stack[top];
}
}
int main() {
int choice, value;
do {
printf("\n===== Stack Menu =====\n");
printf("1. Push\n");
printf("2. Pop\n");
printf("3. Peep (Peek)\n");
printf("0. Exit\n");
printf("Enter your choice: ");
scanf("%d", &choice);
switch(choice) {
case 1:
printf("Enter value to push: ");
scanf("%d", &value);
push(value);
break;
case 2:
pop();
break;
case 3:
peep();
break;
case 0:
printf("Exiting program...\n");
break;
default:
printf("Invalid choice! Please try again.\n");
}
} while (choice != 0);
return 0;
}
Editor is loading...
Leave a Comment