9.
Full & Empty Operation on Stack
#include <stdio.h>
#define SIZE 5
int stack[SIZE], top = -1;
void push(int element) {
if (top == SIZE - 1)
printf("Stack is Full!\n");
else
stack[++top] = element;
void pop() {
if (top == -1)
printf("Stack is Empty!\n");
else
top--;
void display() {
if (top == -1)
printf("Stack is Empty!\n");
else {
printf("Stack elements: ");
for (int i = 0; i <= top; i++)
printf("%d ", stack[i]);
printf("\n");
int main() {
push(10);
push(20);
display();
pop();
display();
return 0;
10. Insert and Display Operations on Linear Queue
#include <stdio.h>
#define SIZE 5
int queue[SIZE], front = -1, rear = -1;
void insert(int element) {
if (rear == SIZE - 1)
printf("Queue is Full!\n");
else {
if (front == -1) front = 0;
queue[++rear] = element;
void display() {
if (front == -1 || front > rear)
printf("Queue is Empty!\n");
else {
printf("Queue elements: ");
for (int i = front; i <= rear; i++)
printf("%d ", queue[i]);
printf("\n");
int main() {
insert(10);
insert(20);
display();
return 0;
11. Delete and Display Operations on Linear Queue
#include <stdio.h>
#define SIZE 5
int queue[SIZE], front = -1, rear = -1;
void delete() {
if (front == -1 || front > rear)
printf("Queue is Empty!\n");
else
front++;
void display() {
if (front == -1 || front > rear)
printf("Queue is Empty!\n");
else {
printf("Queue elements: ");
for (int i = front; i <= rear; i++)
printf("%d ", queue[i]);
printf("\n");
int main() {
rear = 1; queue[0] = 10; queue[1] = 20; front = 0;
delete();
display();
return 0;
}
12. Insert Operation on Circular Queue Using Array
#include <stdio.h>
#define SIZE 5
int cqueue[SIZE], front = -1, rear = -1;
void insert(int element) {
if ((rear + 1) % SIZE == front)
printf("Circular Queue is Full!\n");
else {
if (front == -1) front = 0;
rear = (rear + 1) % SIZE;
cqueue[rear] = element;
void display() {
if (front == -1)
printf("Circular Queue is Empty!\n");
else {
printf("Circular Queue elements: ");
int i = front;
while (1) {
printf("%d ", cqueue[i]);
if (i == rear) break;
i = (i + 1) % SIZE;
printf("\n");
int main() {
insert(10);
insert(20);
display();
return 0;
13. Delete Operation on Circular Queue Using Array
#include <stdio.h>
#define SIZE 5
int cqueue[SIZE], front = -1, rear = -1;
void delete() {
if (front == -1)
printf("Circular Queue is Empty!\n");
else {
if (front == rear)
front = rear = -1;
else
front = (front + 1) % SIZE;
void display() {
if (front == -1)
printf("Circular Queue is Empty!\n");
else {
printf("Circular Queue elements: ");
int i = front;
while (1) {
printf("%d ", cqueue[i]);
if (i == rear) break;
i = (i + 1) % SIZE;
printf("\n");
int main() {
rear = 1; cqueue[0] = 10; cqueue[1] = 20; front = 0;
delete();
display();
return 0;