#include #include typedef struct { int number; char street[31]; char city[31]; char state[3]; int zipcode; } Address; int readList(Address list[]) { int num, result, i = 0; result = scanf("%d", &num); while (result != EOF) { list[i].number = num; scanf("%s", list[i].street); scanf("%s", list[i].city); scanf("%s", list[i].state); scanf("%d", &list[i].zipcode); i++; result = scanf("%d", &num); } return i; } void printState(Address list[], char state[], int size) { int i; printf("%s Addresses:\n", state); for(i = 0; i < size; i++) { if (strcmp(list[i].state, state) == 0) { printf("%d %s\n%s, %s %d\n\n", list[i].number, list[i].street, list[i].city, list[i].state, list[i].zipcode); } } } int main(void) { Address list[50]; int size; size = readList(list); printState(list, "CA", size); printState(list, "KS", size); return 0; }