1) nei cicli for in main() hai scritto i < n ma ci va ovviamente i < N;
2) alla fine di main() ci andrebbe un return 0; (te lo dice appunto il "control reaches end o non-void function") dato che la funzione è dichiarata con un int come valore di ritorno. Non saresti costretto a mettere l'istruzione return se avessi dichiarato main() come void function, cosa peraltro assolutamente da evitare;
3) quando definisci il corpo della funzione, dopo la sua intestazione non ci va il ; che è necessario solo nella dichiarazione del prototipo.
Comunque il codice va postato tra tag CODE, vedi punto 6 del regolamento interno.
Aggiungo: perché hai dichiarato l'array ticket nella funzione se l'hai passato come argomento? E perché hai usato i (che è una variabile) come suo size?