#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define SIZE 10

//***********함수선언**********//
 void print_list();        
 void find_sex_number();  
 void find_name();
 void find_loterion_number();
 void confirm_birthday();

 

struct date
{
 int day;
 int month;
 int year;
};

//*************구조체 생성 부분***************//
struct whitePages
{
 int recordNumber; //레코드번호
 char name[20]; //이름
 char phoneNumber[20]; //전화번호
 char address[20]; //주소
 int sex; //성별(1이면 남자, 0이면 여자)
 float grade; //프로그래밍 성적
 struct date birthday;
 

};
//*************구조체 생성 부분***************//

 

//****************배열 선언 후  초기화 ************************//

struct whitePages w[10] = { 
    {1, \"ㄱㄱㄱ\", \"010-1987-0101\", \"수원 \", 1, 76,{26,5,1988}},
    {2, \"ㄱㄱㄱ\", \"010-2849-9999\", \"마산 \", 2, 77,{26,5,1988}},
    {3, \"ㄱㄱㄱ\", \"010-3724-6666\", \"평택 \", 1, 78,{31,5,1982}},
    {4, \"ㄱㄱㄱ\", \"010-4685-1234\", \"영월 \", 2, 79,{12,5,1983}},
    {5, \"ㄱㄱㄱ\", \"010-5561-5553\", \"울진 \", 1, 80,{23,5,1984}},
    {6, \"ㄱㄱㄱ\", \"010-6445-2211\", \"대구 \", 2, 82,{24,5,1985}},
    {7, \"ㄱㄱㄱ\", \"010-7347-1122\", \"경기 \", 1, 83,{25,5,1986}},
    {8, \"ㄱㄱㄱ\", \"010-8251-6677\", \"인천 \", 1, 84,{26,5,1987}},
    {9, \"ㄱㄱㄱ\", \"010-9163-2345\", \"부산 \", 2, 85,{27,5,1988}},
    {10,\"ㄱㄱㄱ\", \"010-1076-1234\", \"서울 \", 3, 86,{28,5,1989}}

};

//****************배열 선언 후  초기화 ************************//

 

int main(void)
{
 
 int number=0;

 
 while(1)
 {
  printf(\"메뉴 번호에 해당하는 숫자입력\\n\");
  printf(\"/+1. 전체출력\\n\");
  printf(\"/+2. 성별찾기\\n\");
  printf(\"/+3.  이름찾기\\n\");
  printf(\"/+4. 지역인원수\\n\");
  printf(\"/+5. 종료\\n\");
  scanf(\"%d\",&number);

  if(number == 1) print_list();
  if(number == 2) find_sex_number();
  if(number == 3) find_name();
  if(number == 4) find_loterion_number();
  if(number == 5) return 0;
 }
 

 return 0;
}

 

void print_list()
{
 int i;

 for(i = 0; i < SIZE; i++)
 {
  
  printf(\"레코드번호 : %d\\n\" ,w[i].recordNumber);
  printf(\"이름 : %s\\n\" ,w[i].name);
  printf(\"전화번호 : %s\\n\",w[i].phoneNumber);
  printf(\"주소 : %s\\n\",w[i].address);
  printf(\"성별 : %d\\n\",w[i].sex);
  printf(\"성적 : %f\\n\",w[i].grade);
  printf(\"생년월일:%d,%d,%d\\n\",w[i].birthday);
     

  if(w[i].sex == 1)
   printf(\"남자\\n\");
  else
   printf(\"여자\\n\");

  printf(\"\\n\");
  


 }
}

 

void find_sex_number()
{
 int i;
 int a = 0;
 int b = 0;

 for(i = 0; i < SIZE; i++)
 {
  if(w[i].sex == 1)
   a++;
  else
   b++;
 }

 printf(\"남자 %d명, 여자 %d명입니다.\",a,b);
}


void find_name()
{
 
 int result=0;
 char s2[20];
 int i=0;


 printf(\"이름을 입력하세요:\");
 scanf(\"%s\",s2);

 for(i=0;i<SIZE;i++)
 {
  if(strcmp(s2,w[i].name)==0)
  {
  printf(\"레코드번호 : %d\\n\" ,w[i].recordNumber);
  printf(\"이름 : %s\\n\" ,w[i].name);
  printf(\"전화번호 : %s\\n\",w[i].phoneNumber);
  printf(\"주소 : %s\\n\",w[i].address);
  printf(\"성별 : %d\\n\",w[i].sex);
  printf(\"성적 : %f\\n\",w[i].grade);
  printf(\"생년월일:%d,%d,%d\\n\",w[i].birthday);
  }
  
 }
}
 

 

void find_loterion_number()
{
  char s1[20];
  int c=0;
  int i=0;

                
  printf(\"이름을 입력하세요:\");
  scanf(\"%s\",&s1);

  for(i=0;i<SIZE;i++)
  {
   if(strcmp(s1,w[i].address)==0)
   {
    c++;
   }

   
  }
  printf(\"%s는 %d명 입니다\\n\",s1,c);
   
}

 

 

void confirm_birthday()
{
 int i;
 int year=0;

 printf(\"년도를 입력하세여\");
 scanf(\"%s\",&year);

 for(i=0;i<SIZE;i++)
 {
  if(w[i].birthday > year)                  <<<<<<<<<<<<<<이부분  뭐가 틀렸데 ㅠ  년도를 입력하면  그년도 보다  작은 사람들을 쭉 출력해줘야 하
  {                                                                             는데  여기 오류데 if문에서 뭔가 틀렸는ㄷ ㅔ 모르겠어 ㅋㅋ 알려주세여~
  printf(\"레코드번호 : %d\\n\" ,w[i].recordNumber);               아는사람이 이시간엔 없겠지....ㅠ
  printf(\"이름 : %s\\n\" ,w[i].name);
  printf(\"전화번호 : %s\\n\",w[i].phoneNumber);
  printf(\"주소 : %s\\n\",w[i].address);
  printf(\"성별 : %d\\n\",w[i].sex);
  printf(\"성적 : %f\\n\",w[i].grade);
  printf(\"생년월일:%d,%d,%d\\n\",w[i].birthday);
  
  }
 }
}