How to find missing elements of a given range in array of distinct elements with C

1 Answer

0 votes
#include <stdio.h>
#include <stdbool.h>

bool ArrayContainsElement(int arr[], int size, int n) {
    for (int i = 0; i < size; i++) {
        if (arr[i] == n) {
            return true;
        }
    }
    return false;
}

void printMissingElements(int arr[], int size, int range_start, int range_end) {
    for (int i = range_start; i <= range_end; i++)
        if (!ArrayContainsElement(arr, size, i))
            printf("%d ", i);
}

int main()
{
    int arr[] = { 2, 4, 5, 7, 9 };
    int range_start = 1, range_end = 9;
    int size = sizeof(arr) / sizeof(arr[0]);

    printMissingElements(arr, size, range_start, range_end);

    return 0;
}




/*
run:

1 3 6 8

*/

 



answered May 23, 2023 by avibootz
edited May 23, 2023 by avibootz
...