Program that stores first 47 prime numbers in an array and prints them

What have I done wrong here? Again syntax or something else?

Code:

`#include <stdio.h>`

int main()

{

int array[47]; /*Sets array to 47*/

int primeNumber = 1; /* declare and initialise the starting point of the

search for primes */

int count=0;

while(primeNumber < 230)

{

int loopGuard = 2; /* initialise the loop guard */

int numDivisors = 0; /* variable representing the number of divisors

a number has */

while(loopGuard < primeNumber) /* continue to perform the statements

while the loopGuard is less than or equal to the current number

(loopGuard) */

{

if(primeNumber % loopGuard == 0) /* if the given number is divisable

by the current number (loopGuard) */

{

numDivisors =numDivisors + 1; /* increase our count of the

number of divisors */

}

/* always increment the loopGuard variable */

loopGuard = loopGuard + 1;

}

/* if there are no divisors for the number it must be prime */

if(numDivisors == 0){

array[count]=primeNumber;

}

count++; /*Count adds one*/

primeNumber = primeNumber + 1; /* increment the loop guard i.e.

test if the next number is prime */

}

count=0;

while (count < 47) /*While count less than 10*/

{

printf("%d ", array[count]); /*Prints numbers according to the position list[1], [2], [3] etc*/

count++; /*Count adds one*/

}

return 0;

}