Question
Exp 4: Use the code provided to answer sub-questions 1 to 5. ONLY USE THE CODE PROVIDED CODE IN TEXT: /* ************************************ */ /* Queues
Exp 4: Use the code provided to answer sub-questions 1 to 5. ONLY USE THE CODE PROVIDED
CODE IN TEXT:
/* ************************************ */ /* Queues main Operations */ /* Inserting & Deleting Integer values into/from */ /* a Circular queue */ /* Insertion(I) and Deletion(D) Operationions */ /* End Of operation(E) */ /* ************************************* */ #include
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
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 tenPerson 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 1 /* 2 /* Queues main Operations */ 3 /* Inserting & Deleting Integer values into/from */ 4. /* a Circular queue */ 5 /* Insertion(I) and Deletion(D) Operationions */ 6 /* End of operation (E) */ 7 /* *** 8 #includeStep by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started