struct personalInfo
{
    char name[50];
    char dateOfBirth[50];
    char address[150];
    char martialStatus[50];
    char nickname[50];
    char favoriteSaying[100];

};

struct employDates{
    char lastPromotionDate[50];
    float startingStarDate;
    char starfleetGradDate[50];

};

struct otherEmployInfo{
    char rank[50];
    char ship[50];
    char starfleetID[50];
    float hourlyPay;

};

struct officer
{
    struct personalInfo infoPersonal;
    struct employDates infoDates;
    struct otherEmployInfo infoOtherEmploy;
};

#include <stdio.h>

int main(void) {

    //Declare an array of structures
    struct officer arrayOfficers[2]={
        {{"Mr. James Tiberius Kirk","March 22, 2233","23 Falling Rock, Riverside, Iowa 52327-0021 Planet Earth"," Single"," Jim","Bones???"},
        {"April 12, 2224", 41153.7, "June 23, 2212"},
        {"Captain","USS Enterprise","02341232",456.78}}
    }; // Given details for two officers for this question so I am declaring an array of size 2 in this case


    // struct officer person1 = { "Mr. James Tiberius Kirk", "March 22, 2233", "23 Falling Rock, Riverside, Iowa 52327-0021 Planet Earth"," Single"," Jim","Bones???",
    //                             " April 12, 2224 ", 41153.7, "June 23, 2212"};

    // Print the initialized structure
    printf("Name: %s\n", arrayOfficers[0].infoPersonal.name);
    printf("Date of Birth: %s\n", arrayOfficers[0].infoPersonal.dateOfBirth);
    printf("Address: %s\n", arrayOfficers[0].infoPersonal.address);
    printf("Martial Status: %s\n", arrayOfficers[0].infoPersonal.martialStatus);
    printf("Nickname: %s\n", arrayOfficers[0].infoPersonal.nickname);
    printf("Favorite Saying: %s\n", arrayOfficers[0].infoPersonal.favoriteSaying);
    printf("Last Promotion Date: %s\n", arrayOfficers[0].infoDates.lastPromotionDate);
    printf("Starting Star Date: %0.1f\n", arrayOfficers[0].infoDates.startingStarDate);
    printf("Star Fleet Grad Date: %s\n", arrayOfficers[0].infoDates.starfleetGradDate);
    printf("Rank: %s\n", arrayOfficers[0].infoOtherEmploy.rank);
    printf("Ship: %s\n", arrayOfficers[0].infoOtherEmploy.ship);
    printf("Starfleet ID: %s\n", arrayOfficers[0].infoOtherEmploy.starfleetID);
    printf("Starfleet Graduation Date: %0.2f\n", arrayOfficers[0].infoOtherEmploy.hourlyPay);


	return 0;
}