디시인사이드 갤러리

갤러리 이슈박스, 최근방문 갤러리

갤러리 본문 영역

구조체 넘 어려워요 ㅠㅠ // 고수님들 헬프좀

24.윤피갤로그로 이동합니다. 2011.11.11 02:04:42
조회 80 추천 0 댓글 2

#include<stdio.h>
#include<stdlib.h>
#include<string.h>

#define MAX_TEAM 100
#define MAX_LENGTH (30+1)


typedef struct   ///   축구팀 구조체
{
 int win, draw, loss;
 int point;
 char name[MAX_LENGTH];
} SOCCERTEAM;


SOCCERTEAM *europeLeague[MAX_TEAM];
int numTeams;

void inputTeams(FILE *file);
void compareTeam();
void printTeams(int numTeams);

void main()
{
 FILE*file;
 int no_cases;

 file=fopen("input.txt","r");
 if(file==NULL) exit(1);

 fscanf(file,"%d",&no_cases);

 while(no_cases--)
 {
  int i;

  inputTeams(file);   //  축구팀을 입력
  
  compareTeam();   /// 순위 비교

  printTeams(numTeams);   //출력

  for(i=0;i<numTeams;i++)  
   free(europeLeague[i]);

 }

}

 

void inputTeams(FILE*file)
{
 int i;
 int w, d, l;
 char name[MAX_LENGTH];

 fscanf(file,"%d ",&numTeams);
 

 for(i=0;i<numTeams;i++)
 {
  SOCCERTEAM *team;

  fscanf(file,"%s %d %d %d", name, &w, &d, &l);  ///  축구팀의 이름  승수, 비긴수,  패배수 입력
  team = (SOCCERTEAM *) malloc(sizeof(SOCCERTEAM) + strlen(name));
  if(team != NULL )
  {
   team->win = w;
   team->draw = d;
   team->loss = l;
   team->point = w*2 +d;  ///    점수를     승수*2 + 비긴수로 계산
   strcpy(team->name, name);

   europeLeague[i] = team;
  }
  else
   exit(1);
 }
}

void compareTeam()
{

 int i,j;
 int value;
 int *nak;

 value=numTeams;

 

 for(i=value;i>1;i--)    ///////    점수순서로   순위정함
 {
  for(j=0;j<value-1;j++)
      if( europeLeague[j+1]->point  > europeLeague[j]->point)
      {
    nak = europeLeague[j+1];
       europeLeague[j+1] = europeLeague[j];
       europeLeague[j] = nak;
  
      }
  

 }

 for(i=value;i>1;i--)   ////    점수가 같은경우   승수로 순위정함
 {
  for(j=0;j<value-1;j++)
   if( europeLeague[j+1]->point  == europeLeague[j]->point)
         if( europeLeague[j+1]->win  > europeLeague[j]->win)
         {
       nak = europeLeague[j+1];
          europeLeague[j+1] = europeLeague[j];
          europeLeague[j] = nak;
  
         }
  

 }

 for(i=value;i>1;i--)   ///  점수, 승수가 같은경우  비긴수로 순위 정함
 {
  for(j=0;j<value-1;j++)
   if(( europeLeague[j+1]->point  == europeLeague[j]->point) && ( europeLeague[j+1]->win  == europeLeague[j]->win))
         if( europeLeague[j+1]->draw  > europeLeague[j]->draw)
         {
       nak = europeLeague[j+1];
          europeLeague[j+1] = europeLeague[j];
          europeLeague[j] = nak;
  
         }
  

 }

 for(i=value;i>1;i--) //  점수, 승수, 비긴수가 같은경우   패배수로 순위 정함
 {
  for(j=0;j<value-1;j++)
   if(( europeLeague[j+1]->point  == europeLeague[j]->point) && ( europeLeague[j+1]->win  == europeLeague[j]->win)  && ( europeLeague[j+1]->draw  == europeLeague[j]->draw))
         if( europeLeague[j+1]->loss  < europeLeague[j]->loss)
         {
       nak = europeLeague[j+1];
          europeLeague[j+1] = europeLeague[j];
          europeLeague[j] = nak;
  
         }
  

 }

 for(i=value;i>1;i--)  //  점수, 승수, 비긴수, 패배수가 같은경우   팀이름 순서대로 순위정함
 {
  for(j=0;j<value-1;j++)
   if(( europeLeague[j+1]->point  == europeLeague[j]->point) && ( europeLeague[j+1]->win  == europeLeague[j]->win)  && ( europeLeague[j+1]->draw  == europeLeague[j]->draw)  && ( europeLeague[j+1]->loss  == europeLeague[j]->loss))
         if( europeLeague[j+1]->name  > europeLeague[j]->name)
         {
       nak = europeLeague[j+1];
          europeLeague[j+1] = europeLeague[j];
          europeLeague[j] = nak;
  
         }
  

 }


 


 


  
}

void printTeams(int numTeams)
{

 int i;

 for(i=0;i<numTeams;i++)
  printf("%s %d\\n",europeLeague[i]->name,europeLeague[i]->point);

}















서버에 제출하면 86점인데 어디가 틀리니 몰겠어요 ㅠㅠ

추천 비추천

0

고정닉 0

0

댓글 영역

전체 댓글 0
본문 보기

하단 갤러리 리스트 영역

왼쪽 컨텐츠 영역

갤러리 리스트 영역

갤러리 리스트
번호 제목 글쓴이 작성일 조회 추천
설문 뛰어난 운동 신경으로 남자와 싸워도 이길 것 같은 여자 스타는? 운영자 25/11/24 - -
이슈 [디시人터뷰] 충무로가 주목하는 신예, '세계의 주인' 서수빈 운영자 25/11/24 - -
AD 대학생 필수템! What's in my Bag 운영자 25/11/21 - -
공지 프로그래밍 갤러리 이용 안내 [97] 운영자 20.09.28 48771 65
2905009 법무부 영문 표기가 Ministry of Justice 발명도둑잡기(118.216) 00:14 2 0
2905008 DB 검색할 때 %like%는 걍 없다고 생각하고 써야함? 프갤러(58.29) 00:14 3 0
2905007 새벽 1시 핫딜... 당신은 잠만 잤습니다 프갤러(117.111) 00:01 10 0
2905006 이거 항소하면 무죄 내지는 벌금50까지 줄여지냐? 씨발국가야? ㅇㅇ(39.7) 11.26 10 0
2905005 대통령보다 연봉높은 우주청 현실 [1] 타이밍뒷.통수한방(1.213) 11.26 20 0
2905004 개인 자격으로 인공위성 만들어 발사한 미디어아티스트 송호준 [1] 발명도둑잡기(118.216) 11.26 11 0
2905003 해외기사들보면 삼성 lg제품 존나 광고하네 타이밍뒷.통수한방(1.213) 11.26 11 0
2905002 소프트웨어 엔지니어의 몰입 손발이시립디다갤로그로 이동합니다. 11.26 14 0
2905001 [공식] 누리호 4차 발사 현장 생중계 발명도둑잡기(118.216) 11.26 7 0
2905000 이거 ㅈㄴ 억울한데 항소할지 걍 벌받을지 추천좀 ㅇㅇ(39.7) 11.26 14 0
2904999 슬슬 재취업들어가야겠군 ㅇㅇ(113.59) 11.26 12 0
2904998 R이나 파이썬같은 툴 돌릴 때 작동 원리에 대한 수학 ㅇㅇ(211.108) 11.26 14 0
2904997 음악인 나오는 영화 추천 <꿈의 제인> 발명도둑잡기(118.216) 11.26 10 0
2904994 충격적임.. ♥냥덩이의우웅한하룽♥갤로그로 이동합니다. 11.26 15 0
2904993 유재석 김태호 카르텔 근황 ♥냥덩이의우웅한하룽♥갤로그로 이동합니다. 11.26 28 1
2904992 밤하늘 별빛이 호롱불 같구낭 ♥냥덩이의우웅한하룽♥갤로그로 이동합니다. 11.26 16 0
2904988 Wendy & Lisa-The Closing Of the Year 발명도둑잡기(118.216) 11.26 7 0
2904986 회사에서 AI 써야하는 이유가 있음 박민준갤로그로 이동합니다. 11.26 31 0
2904984 33살 인생 평가좀.. 진지함 정말이야, 절박해 [1] ㅇㅇ(39.7) 11.26 23 0
2904982 [발언대] ‘2인 선거구’ 없애야 민심 제대로 반영된다 발명도둑잡기(118.216) 11.26 9 0
2904981 Ada의 case when 최적화와 errno → 예외 매핑 나르시갤로그로 이동합니다. 11.26 9 0
2904979 무슨 맛으로 먹을까 떡볶이 인데 망했다. [1] 넥도리아(220.74) 11.26 18 0
2904976 통합 에러 핸들러와 이진 탐색 최적화 나르시갤로그로 이동합니다. 11.26 13 0
2904975 나님 주무십니당⭐+ ♥냥덩이의우웅한하룽♥갤로그로 이동합니다. 11.26 10 0
2904974 Go 쓰자 박민준갤로그로 이동합니다. 11.26 24 0
2904973 악플러 멍유 제발 일본에서 조난.. [4] ♥냥덩이의우웅한하룽♥갤로그로 이동합니다. 11.26 38 0
2904972 나님 누엇어양✨ ♥냥덩이의우웅한하룽♥갤로그로 이동합니다. 11.26 16 0
2904970 뉴비들을 위한 입시 면접 합격 가이드(따뜻한 조언)!M 프갤러(121.142) 11.26 19 1
2904969 누리호 발사 기원 우주 플레이리스트 발명도둑잡기(118.216) 11.26 17 0
2904966 나씻주준⭐+ [1] ♥냥덩이의우웅한하룽♥갤로그로 이동합니다. 11.26 29 0
2904964 일본 취업 유학 워홀 여행 관련모임 ㅇㅇ(106.146) 11.26 22 0
2904963 27일 27번 타자가 친 공처럼 로케트 잘 올라갈까? 발명도둑잡기(118.216) 11.26 18 0
2904962 <UDT 우리동네 특공대>가 인기래서 생각나는 예전 글 [1] 발명도둑잡기(118.216) 11.26 22 0
2904961 C API를 위한 고성능 예외-에러코드(errcode) 매핑 전략 나르시갤로그로 이동합니다. 11.26 34 0
2904960 엣지 탭 천개쯤 띄우면 다 [1] 발명도둑잡기(118.216) 11.26 21 0
2904959 왜 갑자기 쌍ㅅ쌍 얘기야? 나르시갤로그로 이동합니다. 11.26 29 1
2904958 Clair 라이브러리: Ada 예외를 C API로 매핑하기 나르시갤로그로 이동합니다. 11.26 20 0
2904957 한국에 실제 있다는 중국 사이비종교 마을 ㄷㅅㄷ [1] ♥냥덩이의우웅한하룽♥갤로그로 이동합니다. 11.26 36 0
2904956 트위터가 공개한건 국적이 아니라 위치다 발명도둑잡기(118.216) 11.26 19 0
2904955 민주정의당 후보, 4대강 죽이기 광고모델 이순재 발명도둑잡기(118.216) 11.26 27 1
2904954 외모는 단점을 커버시키는 힘이 있다 [2] Move갤로그로 이동합니다. 11.26 47 0
2904953 짱깨 한국 여론조작 또 걸렸네 ㅋㅅㅋ ♥냥덩이의우웅한하룽♥갤로그로 이동합니다. 11.26 34 2
2904952 귀찮은데 말이 필요하나 루도그담당(58.233) 11.26 43 0
2904951 저능아씨는 여기서 살아 RyuDOG갤로그로 이동합니다. 11.26 35 0
2904950 프붕이들 솔직히 병신들이 도배하는거보다 러스트 얘기가 낫지? [4] 프갤러(110.8) 11.26 41 0
2904949 아아 하늘은 어째서 나를 낳고 RyuDOG갤로그로 이동합니다. 11.26 24 0
2904948 낄낄낄낄 RyuDOG갤로그로 이동합니다. 11.26 22 0
2904947 솔직히 글 읽을 필요도 없음 RyuDOG갤로그로 이동합니다. 11.26 29 0
2904946 저거 봐바 몇대 때려주니까 루도그담당(58.233) 11.26 31 0
갤러리 내부 검색
제목+내용게시물 정렬 옵션

오른쪽 컨텐츠 영역

실시간 베스트

1/8

디시미디어

디시이슈

1/2