디시인사이드 갤러리

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

갤러리 본문 영역

C 구조체 정렬 도와주세요.

ㅁㄴㅇㄹ(210.115) 2010.10.25 12:09:23
조회 177 추천 0 댓글 2

#include <stdio.h>
void sort_bubble(struct student *s, struct student *n);
void desc_bubble(struct student *s, struct student *n, struct student *m);

struct student {
 int number;
 char name[10];
 double height;
 struct student *next; // next에 null값이 저장되어있으면 다음 구조체로 넘어감.
};

int main()
{
 struct student s1 = {30,"kim",167.2,NULL};
 struct student s2 = {31,"park",179.1,NULL};
 struct student s3 = {32,"choi",169.5,NULL};
 struct student s4 = {33,"shin",173.3,NULL};
 struct student s5 = {34,"kim",170.6,NULL};
 struct student s6 = {35,"lee",170.4,NULL};
 struct student s7 = {36,"park",182.0,NULL};
 struct student s8 = {37,"yang",177.7,NULL};
 struct student s9 = {38,"kang",176.4,NULL};
 struct student s10 = {39,"lee",178.3,NULL};
 struct student *first = NULL;
 struct student *current = NULL;

 first = &s1;
 s1.next = &s2;
 s2.next = &s3;
 s3.next = &s4;
 s4.next = &s5;
 s5.next = &s6;
 s6.next = &s7;
 s7.next = &s8;
 s8.next = &s9;
 s9.next = &s10;
 s10.next = NULL;
 current = first;

 printf("오름차순\\n");
 sort_bubble(first,first);

 while(current != NULL)
 {
  printf("학생의 번호 = %d, 이름 = %s, 키 = %f\\n", current->number, current->name, current->height);
  current = current->next; // 다음 구조체로 넘어감
 }
}

void sort_bubble(struct student *s, struct student *n)
{
 int k=0;
 double least;
 
 for(; s!=NULL; s = s->next)
 {
  least = s->height;
  for(n = s->next; n!=NULL; n = n->next)
  {
   if(least > n->height)
   {
    least = n->height;
   }
  }
  printf("%f\\n", least);
 }
}


구조체에 입력된 키순서대로 오름차순,내림차순으로 출력하는 함수와 이름순서대로 출력하는 함수를 만들어야하는데 하나만 만들면 나머지는 만들 수 있을 것 같은데 아직 잘 모르겠어요.
구조체가 자바의 arraylist같이 for문으로 무한입력받게 만들면 몇개가 입력되었는지 모르기 때문에 정렬함수 안에서 배열을 선언하고 크기를 정해서 하는것도 말이 안되구요. (그렇다고 for문 돌릴때 n값을 하나씩 증가시켜서 그 값만큼 배열을 만든다. 뭐 이런것도 사실상 하면 안될것같아요. 배열을 사용하지 않고 구조체랑 포인터만 사용해서 정렬하라고 했거든요.)

정렬함수의 for문에서 n을 first부터 비교하면 최소값만 10번 반복되고 s보다 하나 큰값이랑 비교해도 이상하게 나와서요.
temp를 써서 위치를 바꿔버리면 call by value가 아닌 reference라서 저장된 값이 바뀌니까 맨 마지막에 출력(while문)할때 이상하게 나올 테니...
어떻게 해야 할 지 모르겠습니다.

추천 비추천

0

고정닉 0

0

댓글 영역

전체 댓글 0
본문 보기

하단 갤러리 리스트 영역

왼쪽 컨텐츠 영역

갤러리 리스트 영역

갤러리 리스트
번호 제목 글쓴이 작성일 조회 추천
설문 끝까지 다 본 걸 후회하게 만든 용두사미 드라마는? 운영자 25/07/07 - -
349306 아 아까 시스템콜 질문한 애인데..한번만 더 도와줘.. [1] 도와줍쇼(112.187) 13.03.15 76 0
349305 MS OS 가 좆같은 이유 [7] ㅇㅇ(119.203) 13.03.14 329 0
349304 [3] 루비•‿•갤로그로 이동합니다. 13.03.14 95 0
349301 횽들 컴공에서 대학원가면 뭐 해요? [2] 횽들(119.202) 13.03.14 185 0
349300 야 갑자기 생각난건데.... [13] LastCorona갤로그로 이동합니다. 13.03.14 113 0
349299 횽들 컴퓨터구조라는 과목 강의 목표인데요 영어로 써져있어서 읽기 어렵네요 [3] 횽들(119.202) 13.03.14 95 0
349298 힉스입자가 프로그래밍에 끼칠영향 [3] ㅇㅇ(61.98) 13.03.14 130 0
349297 횽들 소프트웨어설계방법시간에는 뭐 배워요? [4] 횽들(119.202) 13.03.14 67 0
349296 횽들 마이크로프로세서 시간에는 뭐 배워용? [4] 횽들(119.202) 13.03.14 76 0
349295 횽들 컴퓨터그래픽스가 뭐에요? [5] 횽들(119.202) 13.03.14 92 0
349294 횽들 OS시간에는 뭐 배워여? [7] 횽들(119.202) 13.03.14 99 0
349293 머해 [2] 루비•‿•갤로그로 이동합니다. 13.03.14 61 0
349292 centos 사용이유가 대체뭐임? [14] ㄷㅈㄱ2(175.215) 13.03.14 137 0
349291 횽들 PL시간에 컴파일러 만드는거 한다는데 [3] 횽들(119.202) 13.03.14 62 0
349290 횽들 컴퓨터구조시간에는 뭐 배워용? [3] 횽들(119.202) 13.03.14 67 0
349289 횽들 컴공과 가면 뭐 배워여? [2] 횽들(119.202) 13.03.14 64 0
349288 우와 [1] 루비•‿•갤로그로 이동합니다. 13.03.14 50 0
349287 대장금? ㅇㅇ(119.203) 13.03.14 52 0
349286 횽들 PL 시간에 뭐 배워영? [5] 횽들(119.202) 13.03.14 56 0
349285 횽들 PL이 뭐하는 과목이에여? [2] 횽들(119.202) 13.03.14 59 0
349284 centos 깔아봣는데 ㄷㅈㄱ2(175.215) 13.03.14 35 0
349283 사랑하니까아아아아 사랑하니꺼아아어아ㅏ아어아 LastCorona갤로그로 이동합니다. 13.03.14 38 0
349280 빙그르 빙그르 빙글빙글 빙그르 빙그르 루비•‿•갤로그로 이동합니다. 13.03.14 37 0
349279 궁금한 것 하나쯤은 어때 이건 나만의 매력 루비•‿•갤로그로 이동합니다. 13.03.14 26 0
349278 그리고 또 하나의 이유는 비밀로 남겨둘래 루비•‿•갤로그로 이동합니다. 13.03.14 28 0
349277 미처 알지 못했던 세상을 내게 보여준 너에게 루비•‿•갤로그로 이동합니다. 13.03.14 26 0
349276 어느 무엇 하나 사랑따위 몰라라했던 나에게 루비•‿•갤로그로 이동합니다. 13.03.14 38 0
349275 drink it drink it power up내 사랑을 꾹꾹 눌러담았어 루비•‿•갤로그로 이동합니다. 13.03.14 28 0
349274 이리저리 망설이고 주저하고 후회하고 또 지쳐갈때 루비•‿•갤로그로 이동합니다. 13.03.14 31 0
349273 근데 하노이탑 재귀로 푸는거 [1] 듀스(124.153) 13.03.14 122 0
349272 그럴때 꼭 잊지마 나만의 special secret medicine 루비•‿•갤로그로 이동합니다. 13.03.14 31 0
349271 말로 하긴 힘들지 참 살다보면 가끔 그러지 루비•‿•갤로그로 이동합니다. 13.03.14 31 0
349270 빙그르 빙그르 빙글빙글 빙그르 빙그르 sweet witches 루비•‿•갤로그로 이동합니다. 13.03.14 25 0
349269 또 더하기 기쁨의 탄성도 이만큼의 윙크도 모아 루비•‿•갤로그로 이동합니다. 13.03.14 25 0
349268 약간의 눈물과 긴 한숨도 섞여있고 루비•‿•갤로그로 이동합니다. 13.03.14 28 0
349266 레몬보다 부드럽고 오렌지보다는 상큼해요 루비•‿•갤로그로 이동합니다. 13.03.14 33 0
349265 이건 참 비밀스런 레시피 너만을 위한 특제 medicine 루비•‿•갤로그로 이동합니다. 13.03.14 36 0
349264 그렇다면 hey 날봐 내게 아주 특별한 방법이 있지 루비•‿•갤로그로 이동합니다. 13.03.14 46 0
349263 콜록콜록 왜그래 어째오늘너피곤해보여 루비•‿•갤로그로 이동합니다. 13.03.14 47 0
349262 형들아.. 이산수학(명제/논리적동치법칙)이 너무 어려워..도와주라... [4] 코Sab갤로그로 이동합니다. 13.03.14 620 0
349261 형님.. 내가 개념이 없어서 질문하나만할께 [1] 도와줍쇼(112.187) 13.03.14 46 0
349260 취업어케함?? [5] 오옹(59.16) 13.03.14 115 0
349259 아크로에딧 글자색깔 계속 바꾸는거 없냐? 08학번공대생갤로그로 이동합니다. 13.03.14 40 0
349258 centos 쓰기쉬움? ㄷㅈㄱ2(175.215) 13.03.14 74 0
349257 애기들이냐 클러스터를 논하게 ㅡ, .ㅡ [6] ㅇㅇ(119.203) 13.03.14 170 0
349256 살기 겁난다. [1] 듀스(124.153) 13.03.14 57 0
349255 scanf문 [1] 백이(182.214) 13.03.14 61 0
349254 머리보다 가슴이 먼저면 ㅇㅇ(119.203) 13.03.14 87 0
349253 ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ [1] 루비•‿•갤로그로 이동합니다. 13.03.14 69 0
349252 centos 하고 페도라 둘중에 페도라쓸려고하는데 페도라좋음? [8] ㄷㅈㄱ2(175.215) 13.03.14 131 0
뉴스 김소연, '수요일 밤에' 홀린 매혹적 비주얼! 넘치는 끼 장착한 '아리아리요' 디시트렌드 14:00
갤러리 내부 검색
제목+내용게시물 정렬 옵션

오른쪽 컨텐츠 영역

실시간 베스트

1/8

뉴스

디시미디어

디시이슈

1/2