#include <stdio.h>
#include <stdlib.h>
#define N 100
typedef struct {
  char name[256];
  unsigned char sex;
  unsigned char age;
} PERSONAL_DATA;

int main()
{
  PERSONAL_DATA d[N];
  int cnt[100] = {0};
  for (int i = 0; i < N; ++i) {
    sprintf(d[i].name, "%d", rand());
    d[i].sex = rand() % 100 < 50 ? 'F' : 'M';
    d[i].age = rand() % 80 + 10;
  }
  printf("input data:\n");
  printf("%-20s %s %s\n", "name", "sex", "age");
  for (int i = 0; i < N; ++i)
    printf("%-20s %-3c %d\n", d[i].name, d[i].sex, d[i].age);

  for (int i = 0; i < N; ++i)
    cnt[d[i].age]++;

  printf("\noutput result:\n");
  for (int i = 0; i < N; ++i)
    if (cnt[i] > 1) {
      printf("\nage = %d, count = %d\n", i, cnt[i]);
      for (int j = 0; j < N; ++j)
        if (d[j].age == i)
          printf("name = %s\n", d[j].name);
    }
  return 0;
}
