Also can i ask im getting a funny error when im intializing the variable array of months

braces around scalar initializer error

Where should i actually intialize the variable in main or in a seperate function because most likely all the other functions would have to use the array ?

Code:
int main(void)
{
   unsigned int month [] = {{31}, {28}} /* etc etc*/
   unsigned long year;
   
   getMonth(&month)
   getYear(&year);
   
   return EXIT_SUCCESS;
}

unsigned getMonth(unsigned int *month)
{
}
And is it a good idea to work out the leap year in a seperate function then call it in the main?
Just trying to get an idea how it should be designed as well?