| #include <stdio.h> | |
| #define MAX 10 | |
| int Q[MAX]; | |
| int f = -1, r = -1; | |
| void enqueue(int num){ | |
| if(r == MAX -1){ | |
| printf("Queue Overflow\n"); | |
| } else { | |
| r++; | |
| Q[r] = num; | |
| if(f == -1){ | |
| f = 0; | |
| } | |
| } | |
| } | |
| int dequeue(){ | |
| if(f == -1 || f > r){ | |
| return -1; | |
| } else { | |
| return Q[f++]; | |
| } | |
| } | |
| void create(){ | |
| int data; | |
| printf("Enter data: "); | |
| scanf("%d", &data); | |
| while(data != -1){ | |
| enqueue(data); | |
| printf("Enter data or enter -1 to stop: "); | |
| scanf("%d", &data); | |
| } | |
| } | |
| void display(){ | |
| int i; | |
| if(f == -1 || f > r){ | |
| printf("Queue Empty\n"); | |
| } else { | |
| for(i = f; i <= r; i++){ | |
| printf("%d ", Q[i]); | |
| } | |
| printf("\n"); | |
| } | |
| } | |
| int main(){ | |
| int choice, num, rpt = 1; | |
| printf("***Create Linear Queue***\n"); | |
| create(); | |
| while(rpt != 0){ | |
| printf("1. Enqueue\n2. Dequeue\n3. Display\n4. Exit\n"); | |
| printf("----------------\n"); | |
| printf("Enter a choice: "); | |
| scanf("%d", &choice); | |
| switch(choice){ | |
| case 1: | |
| printf("Enter a num: "); | |
| scanf("%d", &num); | |
| enqueue(num); | |
| break; | |
| case 2: | |
| num = dequeue(); | |
| if(num != -1){ | |
| printf("%d successfully deleted\n", num); | |
| } else { | |
| printf("Queue Underflow\n"); | |
| } | |
| break; | |
| case 3: | |
| display(); | |
| break; | |
| case 4: | |
| exit(0); | |
| } | |
| printf("Do you want to continue? (1/0): "); | |
| scanf("%d", &rpt); | |
| system("cls"); | |
| } | |
| } |
Friday, 4 November 2016
Program 10 - Linear Queue
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment