I have tried to change things but i am still getting that all even numbers exept 2 are not prime, but every odd number is also prime. Is there something wrong with my loop? please help
Code:
#include <stdio.h>
#include <math.h>
#define TRUE 1;
#define FALSE 0;
void getNumber(int *number);
int isPrime(int number);
int main()
{
int number;
getNumber(&number);
if (isPrime(number))
printf("\n%d is a prime number\n", number);
else
printf("\n%d is not a prime number\n", number);
scanf("%d", number);
return 0;
}
void getNumber(int *number)
{
printf("Please enter a positive number ");
if (scanf("%d", number) != 1)
{
printf("Invalid number entered\n");
exit(1);
}
}
int isPrime(int number)
{
int count, s;
/* Every even number is not prime except for '2' */
if (number % 2 == 0 && number != 2) return FALSE;
/* check every odd number up to the square root of the number */
s = sqrt(number);
for (count=2; count<=s ; count++);
{
if (number % count == 0) return TRUE;
}
return TRUE;
}