#include <stdio.h>

#define MAX_SIZE 100

void print_array(int arr[], int size); int find_element(int arr[], int size, int element); int insert_element(int arr[], int size, int element, int index); int delete_element(int arr[], int size, int element);

int main() { int arr[MAX_SIZE] = {1, 2, 3, 4, 5}; int size = 5, element, index, choice;

do {
    printf("\nSelect an operation:\n");
    printf("1. Find an element\n");
    printf("2. Insert an element\n");
    printf("3. Delete an element\n");
    printf("4. Exit\n");
    printf("Enter your choice: ");
    scanf("%d", &choice);

    switch (choice) {
        case 1:
            printf("Enter the element to find: ");
            scanf("%d", &element);
            index = find_element(arr, size, element);
            if (index == -1) {
                printf("Element not found.\n");
            } else {
                printf("Element found at index %d.\n", index);
            }
            break;
        case 2:
            printf("Enter the element to insert: ");
            scanf("%d", &element);
            printf("Enter the index to insert at: ");
            scanf("%d", &index);
            size = insert_element(arr, size, element, index);
            printf("Array after insertion:\n");
            print_array(arr, size);
            break;
        case 3:
            printf("Enter the element to delete: ");
            scanf("%d", &element);
            size = delete_element(arr, size, element);
            printf("Array after deletion:\n");
            print_array(arr, size);
            break;
        case 4:
            printf("Exiting...\n");
            break;
        default:
            printf("Invalid choice. Try again.\n");
    }
} while (choice != 4);

return 0;

}

void print_array(int arr[], int size) { for (int i = 0; i < size; i++) { printf("%d ", arr[i]); } printf("\n"); }

int find_element(int arr[], int size, int element) { for (int i = 0; i < size; i++) { if (arr[i] == element) { return i; } } return -1; }

int insert_element(int arr[], int size, int element, int index) { if (index < 0 || index > size) { printf("Invalid index. Element not inserted.\n"); return size; } for (int i = size - 1; i >= index; i--) { arr[i + 1] = arr[i]; } arr[index] = element; return size + 1; }

int delete_element(int arr[], int size, int element) { int index = find_element(arr, size, element); if (index == -1) { printf("Element not found. Array not modified.\n"); return size; } for (int i = index; i < size - 1; i++) { arr[i] = arr[i + 1]; } return size - 1;

用C语言编程实现在一维数组中查找、 插入和删除一个元素的操作

原文地址: https://www.cveoy.top/t/topic/ffP8 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录