1// Aim: Program to perform Menu Driven Array operations (Insertion, Deletion).
2#include <stdio.h>
3void main() {
4 int n, i, x, pos, arr[50], ch;
5 printf("Enter the size of the array :");
6 scanf("%d", &n);
7 printf("Enter the elements of the array :");
8 for (i = 0; i < n; i++) {
9 scanf("%d", &arr[i]);
10 }
11 while (ch != 6) {
12 printf("\nCHOOSE THE OPERATION\n1.Insert an element at the "
13 "beginning\n2.Insert an element at the end\n3.Insert an element at "
14 "a given position\n4.Delete a given element\n5.Display the "
15 "array\n6.EXIT");
16 printf("\nEnter your choice :");
17 scanf("%d", &ch);
18 switch (ch) {
19 case 1:
20 printf("Enter the element to be inserted :");
21 scanf("%d", &x);
22 arr[n] = 0;
23 for (i = n; i > 0; i--) {
24 arr[i] = arr[i - 1];
25 }
26 arr[0] = x;
27 n++;
28 printf("The array after insertion is :");
29 for (i = 0; i < n; i++) {
30 printf("%d\t", arr[i]);
31 }
32 break;
33
34 case 2:
35 printf("Enter the element to be inserted :");
36 scanf("%d", &x);
37 arr[n] = x;
38 n++;
39 printf("The array after insertion is :");
40 for (i = 0; i < n; i++) {
41 printf("%d\t", arr[i]);
42 }
43 break;
44
45 case 3:
46 printf("Enter the element to be inserted :");
47 scanf("%d", &x);
48 printf("Enter the position at which the element is to be inserted :");
49 scanf("%d", &pos);
50 arr[n] = 0;
51 for (i = n; i > pos; i--) {
52 arr[i] = arr[i - 1];
53 }
54 arr[pos] = x;
55 n++;
56 printf("The array after insertion is :");
57 for (i = 0; i < n; i++) {
58 printf("%d\t", arr[i]);
59 }
60 break;
61
62 case 4:
63 printf("Enter the element to be deleted :");
64 scanf("%d", &x);
65 for (i = 0; i < n; i++) {
66 if (arr[i] == x) {
67 pos = i;
68 printf("Enter the element to be inserted :");
69 scanf("%d", &x);
70 printf("Enter the position at which the element is to be inserted :");
71 scanf("%d", &pos);
72 arr[n] = 0;
73 for (i = n; i > pos; i--) {
74 arr[i] = arr[i - 1];
75 }
76 arr[pos] = x;
77 n++;
78 printf("The array after insertion is :");
79 for (i = 0; i < n; i++) {
80 printf("%d\t", arr[i]);
81 }
82 break;
83 break;
84 }
85 }
86 for (i = pos; i < n; i++) {
87 arr[i] = arr[i + 1];
88 }
89
90 n--;
91 printf("The array after deletion is :");
92 for (i = 0; i < n; i++) {
93 printf("%d\t", arr[i]);
94 }
95 break;
96
97 case 5:
98 printf("The array is :");
99 for (i = 0; i < n; i++) {
100 printf("%d\t", arr[i]);
101 }
102 break;
103
104 case 6:
105 printf("thank you");
106 break;
107 }
108 }
109}
110