How to find the max prime number in an array with C

1 Answer

0 votes
#include <stdio.h>
#include <math.h>
 
int isPrime(int n) {
    if (n == 0) return 0;
    if (n == 1) return 0;
    
    for (int i = 2; i <= sqrt(n); i++) {
        if (n % i == 0)
            return 0;
    }
    
    return 1;
} 
 
int main() {
 
    int arr[] = {4, 8, 17, 5, 9, 22, 21, 13, 18, 99};
    int len = sizeof(arr) / sizeof(int), max = arr[0];
 
    for (int i = 0; i < len; i++) {
        if (isPrime(arr[i])) { // 17 5 13
            if (max < arr[i]) { 
                max = arr[i];
            }
        }
    }
     
    printf("%d", max);
 
    return 0;
}

  
  
/*
run:
  
17
 
*/

 



answered Oct 17, 2019 by avibootz
edited Sep 27, 2024 by avibootz

Related questions

1 answer 130 views
1 answer 117 views
1 answer 111 views
1 answer 114 views
1 answer 106 views
1 answer 97 views
1 answer 221 views
...