How to count the numbers with even number of digits in an array with C

1 Answer

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

int count_even_numbers(int arr[], int size) {
    int result = 0;

    for (int i = 0; i < size; i++) {
        int total_digits = (log10(arr[i]) + 1);

        if (total_digits % 2 == 0)
            result++;
    }

    return result;
}

int main()
{
    int array[] = { 564, 90, 7, 1248, 47325, 834921, 1234567 };

    int size = sizeof(array) / sizeof(array[0]);

    printf("%d", count_even_numbers(array, size));
}




/*
run:

3

*/

 



answered Jul 20, 2023 by avibootz
edited Jul 21, 2023 by avibootz
...