#include typedef struct { char sStreet[31]; char sCity[31]; char sState[3]; char sZip[11]; } Address; typedef struct { int iYear; int iMonth; int iDay; } Date; typedef struct { char sFirstName[30]; char sMiddleName[30]; char sLastName[30]; Date dBirthDate; Address aHomeAddress; } Person; typedef struct { Person pMember; Date dDateJoined; int iDuesCurrent; float sfDuesAmount; } ClubMember; void main() { int iNumMembers = 45; ClubMember cMemberArray[200]; /* Suppose we were adding a new member. Then: */ cMemberArray[iNumMembers].dDateJoined.iYear = 1999; cMemberArray[iNumMembers].dDateJoined.iMonth = 3; cMemberArray[iNumMembers].dDateJoined.iDay = 25; cMemberArray[iNumMembers].iDuesCurrent = 1; cMemberArray[iNumMembers].sfDuesAmount = 50; printf("Enter the new member's:\n\n"); printf("First name: "); gets(cMemberArray[iNumMembers].pMember.sFirstName); printf("Middle name: "); gets(cMemberArray[iNumMembers].pMember.sMiddleName); printf("Last name: "); gets(cMemberArray[iNumMembers].pMember.sLastName); printf("Year of birth: "); scanf("%d", &(cMemberArray[iNumMembers].pMember.dBirthDate.iYear)); fflush(stdin); printf("Month of birth: "); scanf("%d", &(cMemberArray[iNumMembers].pMember.dBirthDate.iMonth)); fflush(stdin); printf("Day of birth: "); scanf("%d", &(cMemberArray[iNumMembers].pMember.dBirthDate.iDay)); fflush(stdin); printf("Street address: "); gets(cMemberArray[iNumMembers].pMember.aHomeAddress.sStreet); printf("City: "); gets(cMemberArray[iNumMembers].pMember.aHomeAddress.sCity); printf("State: "); gets(cMemberArray[iNumMembers].pMember.aHomeAddress.sState); printf("Zip code: "); gets(cMemberArray[iNumMembers].pMember.aHomeAddress.sZip); printf("\n\nMember name: %s %s %s\n\n", cMemberArray[iNumMembers].pMember.sFirstName, cMemberArray[iNumMembers].pMember.sMiddleName, cMemberArray[iNumMembers].pMember.sLastName); printf("Date born: %d/%d/%d\n\n", cMemberArray[iNumMembers].pMember.dBirthDate.iYear, cMemberArray[iNumMembers].pMember.dBirthDate.iMonth, cMemberArray[iNumMembers].pMember.dBirthDate.iDay); printf("Address: %s\n %s, %s %s\n\n", cMemberArray[iNumMembers].pMember.aHomeAddress.sStreet, cMemberArray[iNumMembers].pMember.aHomeAddress.sCity, cMemberArray[iNumMembers].pMember.aHomeAddress.sState, cMemberArray[iNumMembers].pMember.aHomeAddress.sZip); }