Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

Use the code provided to answer from Q 1 to 5 /* ************************************ */ /* Queues main Operations */ /* Inserting & Deleting Integer values

image text in transcribed

Use the code provided to answer from Q 1 to 5

/* ************************************ */

/* Queues main Operations */

/* Inserting & Deleting Integer values into/from */

/* a Circular queue */

/* Insertion(I) and Deletion(D) Operationions */

/* End Of operation(E) */

/* ************************************* */

#include

#include

#include

#define MAXELEMENTS 5

#define TRUE 1

#define FALSE 0

// circular Queue insertion and deletion functions

//created for person

struct person

{

int empNo;

char name[12];

int age;

char gender[2];/* M=male, F=Female */

};

//the new queue, this queue takes "person"

struct queue

{

struct person allperson[15];

int front , rear;

};

//the prototypes will change, input to queue is struct person, output from queue is struct person

int main(void)

{

char operation;

int x;

struct queue q, male, female;

q.front = q.rear = MAXELEMENTS - 1;

struct person tenPerson[10]={123,"Ahmet", 21, "M",

234,"Sevgi", 26, "F", 128,Osman,18,M, 432,Mert,27,M,

287,Ayse,34,F , 423,Kemal, 21, M,634,Lale, 16, F,

828,Sefer,15,M, 252,Meral,27,F, 887,Demet,34,F};

do

{

//loop to insert persons into the queue

for(int i=0; i

cqinsert(&q , tenPerson[i]);

}

//delete from the queue

for(int i=0; i

struct person xx;

xx= cqdelete(&q);

//check if the gender in xx is male

if()

//insert in "male"

else

//insert in "female"

}

//delete for male

//delete for female

printf("%s ","Insert Operation type I D or E ");

scanf(" %c",&operation);

switch (operation)

{

case 'I':printf("%s ","Insert an element");

scanf(" %d",&x);

cqinsert(&q , x);

break;

case 'D':x=cqdelete(&q);

printf(" %d is deleted ",x);

break;

}

}

while (operation != 'E');

return 0;

}

int empty(struct queue *pq)

{

return((pq->front == pq->rear) ? TRUE : FALSE);

}

//output from queue is struct person

struct person cqdelete(struct queue *pq)

{

if (empty(pq)) {

printf("Queue underflow ");

exit(1);

}

if (pq->front == MAXELEMENTS - 1)

pq->front = 0;

else

(pq->front)++;

return(pq->items[pq->front]);

}

//input to queue is struct person

void cqinsert(struct queue *pq , int x)

{

/* make room for new element */

if (pq->rear == MAXELEMENTS - 1)

pq->rear = 0;

else

(pq->rear)++;

if (pq->rear == pq->front) {

printf("Queue overflow");

getchar(); getchar();

exit(1);

}

printf(" %d is inserted ",x);

pq->items[pq->rear] = x;

}

Experiment 4 (Prelab task-to be prepared in advance by the student) (to write a COMPLETE C program) Prepare a menu driven C program for Inserting and deletion operation for a queue structure of employee information which has the following structure declaration. Structure of a queue will be defined as follows. struct person { int empNo; char name[12]; int age; char gender[2];/* M=male, F=Female */ }; struct queue struct person allperson[15]; int front, rear; Define the following Initialized array of structure in your program. sruct person tenPerson[10]={123,"Ahmet", 21, "M", 234, "Sevgi", 26, "F", 128,"Osman", 18,"M", 432,"Mert",27,"M", 287,"Ayse", 34,"F" 423,"Kemal", 21, "M",634,"Lale", 16, "F", 828,"Sefer", 15,"M", 252, "Meral", 27, "F", 887,"Demet",34,"F"}; Following steps of operations will take place in your menu driven program. 1. Create a Circular queue using ten Person array structure (copy from array into queue will be done). 2. Delete all the elements of queue and list all the deleted from the monitor. 3. Using circular queue which is populated at step 1, Create two new circular queues, one for Male and one for Female employees. These new queues will be created during the deletion of circular queue and use gender fields for determining Male(M) and Female(F) queues. 4. List the content of Male queue and Female queue during delete operation of each queue. 5. End of operation

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

Database Driven Web Sites

Authors: Joline Morrison, Mike Morrison

2nd Edition

? 061906448X, 978-0619064488

More Books

Students also viewed these Databases questions

Question

help asp

Answered: 1 week ago