Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<stdio.h>
- // Inserts an element. Returns the number of new elements.
- int insert(int arr[], int len, int num, int key) {
- int i;
- if (len == key) {
- arr[key] = num;
- return len+1;
- }
- else {
- for (i=len-1; i>=key; i--) {
- // Shifting elements to right
- arr[i+1] = arr[i];
- // Stop when key is reached.
- if (i == key) {
- arr[key] = num;
- return len+1;
- }
- }
- }
- return len;
- }
- // Inserts an element. Returns the number of new elements.
- int delete(int arr[], int len, int key) {
- int i;
- for (i=key; i<len; i++) {
- arr[i] = arr[i+1];
- }
- return len-1;
- }
- // Display a menu
- int menu() {
- int option;
- printf("\nSelect an option:\n 1) Insert an element\n 2) Delete an element\n 3) Exit\nAns: ");
- scanf("%d", &option);
- return option;
- }
- int display(int arr[], int len) {
- int i;
- for (i = 0; i < len; i++)
- printf("%d ",arr[i]);
- }
- // Driver Code
- int main() {
- int arr[20] = {12, 16, 20, 40, 50, 70};
- int len = 6, num, key;
- while (1) {
- printf("\nArray: ");
- display(arr, len);
- switch (menu()) {
- case 1:
- printf("What do you want to insert? : ");
- scanf("%d", &num);
- printf("At which position do you want to insert %d? : ", num);
- scanf("%d", &key);
- len = insert(arr, len, num, key);
- break;
- case 2:
- printf("Enter the position of the element that you want to delete: ");
- scanf("%d", &key);
- len = delete(arr, len, key);
- break;
- case 3: return 0;
- default: printf("\nInvalid option\n");
- }
- }
- }
Add Comment
Please, Sign In to add comment