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; }