데이터 구조 - 소팅[Sorting Program]프로그램에 관해서
본 자료는 2페이지 의 미리보기를 제공합니다. 이미지를 클릭하여 주세요.
닫기
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
해당 자료는 2페이지 까지만 미리보기를 제공합니다.
2페이지 이후부터 다운로드 후 확인할 수 있습니다.

소개글

데이터 구조 - 소팅[Sorting Program]프로그램에 관해서에 대한 보고서 자료입니다.

목차

없음

본문내용

list[], int n,int key_pos);
: 힙정렬 함수
5) void merge(SCORE list[], SCORE sorted[], int i, int m, int n,int key_pos);
: 병합정렬 보조함수
6) void merge_sort(SCORE list[], int n,int key_pos);
: 병합정렬 함수
7) void merge_pass(SCORE list[], SCORE sorted[], int n, int length,int key_pos);
:병합정렬 보조함수
▶ 그 외 함수들
1) void malloc_subject(int count)
: 메모리를 할당 하는 함수.
//헤더 구조체의 과목이름 메모리 할당
class_h.field=(char **)malloc(sizeof(char *)*(count+2));
for (i=0;i class_h.field[i]=(char *)malloc(sizeof(char)*SUBJECT_SIZE);
//스코어 구조체의 학번,과목,총점 메모리 할당
for (i=0;i {
class_s[i].field=(int *)malloc(sizeof(int)*(count+2));
memset(class_s[i].field,0x00,sizeof(int *)*(count+2));
}
s=trim(s);
if (strlen(s)<=0)return -1;
else
{
temp=strtok(s," ");
if((s_object=find_subject_from_name(temp))==-1)
{
puts("과목 입력이 잘못되었습니다.");return -1;
}
temp=strtok(NULL," ");
if((s_method=find_sort_method_from_name(temp))==-1)
{
puts("정렬방법 입력이 잘못되었습니다.");return -1;
}
return 1;
}
- 먼저 class_h.field에 메모리를 할당한다. 2차 배열이어야 하므로 먼저 과목의수+2(학번,총점) 만큼 char형 이중 포인터로 메모리를 할당 받고, 이것을 다시 for문으로 각 field마다 SUBJECT_SIZE만큼의 포인터로 할당을 받는다. 정적 할당에서의 field[a][b]와 같다.
- 각 학생 데이터마다 field에 과목갯수+2(학번,총점)만큼 int형 포인터로 메모리 할당을 받는다. 그리고 할당 받은 메모리를 초기화 시켜준다.
2 )int parse_input(char *s)
: 명령어 입력을 해석 한다.
- 입력된 명령어를 strtok()함수를 사용해서 공백을 구분자로 나눈다. 문자열의 왼쪽부분을 추출해서 S-ID,과목명들,TOTAL과 비교해서 s_object(정렬 대상을 가리키는 변수)에 넣어주고, 그 값이 -1이면 해당 과목이 없다는 뜻이므로 오류 메시지 출력하고 -1(프로그램 종료)를 리턴해준다. 문자열의 오른쪽 부분을 추출해서 INSERTION, QUICK, HEAP, MERGE과 비교해서 s_method(정렬 방법을 가리키는 변수)에 넣어주고, 그 값이 -1이면 해당 정렬 방법이 없다는 뜻이므로 오류 메시지 출력하고 -1(프로그램 종료)값을 리턴 해준다. 정렬 대상과 정렬 방법을 찾았다면 1을 리턴해서 main()함수에서 적절한 정렬 함수를 호출해서 정렬 시켜준다.
3. 실행 화면
1) 디렉토리, 컴파일
2) 실행 화면
4. 구현 환경
1) OS : Debian Linux/3.0r (Woody)
2) Programming Language : C
3) Compiler : gcc 2.95.4
4) Editor : vi editor
  • 가격1,800
  • 페이지수8페이지
  • 등록일2014.01.15
  • 저작시기2014.1
  • 파일형식한글(hwp)
  • 자료번호#902121
본 자료는 최근 2주간 다운받은 회원이 없습니다.
청소해
다운로드 장바구니