[C언어]허프만 알고리즘을 이용한 Text 파일 압축/해제 프로그램
닫기
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
해당 자료는 7페이지 까지만 미리보기를 제공합니다.
7페이지 이후부터 다운로드 후 확인할 수 있습니다.

소개글

[C언어]허프만 알고리즘을 이용한 Text 파일 압축/해제 프로그램에 대한 보고서 자료입니다.

본문내용

#include
#include
#include
#include
typedef struct _huf { //트리 구조체
char *word;
int count;
struct _huf *prev, *next;
}huf;
typedef struct _c_table { //코드테이블 구조체
char *name;
char code[256];
struct _c_table *link;
}c_table;
huf *c_head;
c_table *t_head=NULL;
char* file_name(int num); //파일의 이름을 입력 받는 함수
long compress(char *c_name); //문자를 읽어오는 함수
int com_Rword(char *t); //문자를 읽어서 같은 문자가 존재하는지 검사하는 함수
void make_tree(); //트리를 생성하는 함수
void make_table(huf *name, char *code); //트리를 생성한 후 코드 테이블을 만드는 함수
void tree_sort(); //트리 생성시 빈도수 별로 정렬 하는 함수
void search(huf *temp, char buf[], huf *center); //코드 테이블을 만들때 중위 순회로 트리를 검사하는 함수
void print_tree(huf *temp); //트리 출력 함수
void write_header(long E_cnt, char *input, char *ouput); //파일에 기록하는 함수
int decompress(char *string); //압축 파일에서 헤더 정보를 읽어 오는 함수
void de_tree(char *t, huf* tree); //압축된 파일로 부터 트리를 만드는 함수
int de_Readword(FILE *rp, long f_len, char *out_name); //압축된 파일에서 실제 파일의 단어가 기록된 부분부터 읽어오는 함수
long file_length(FILE *fp); //파일의 바이트수를 구하는 함수
void print_menu();
int main()
{
int sel=0, val=0;
long E_cnt=0;
char buf[256];
char input_name[20];
char output_name[20];
huf *t=NULL;
while(1)
{
memset(input_name, (int)NULL, 20);
memset(output_name, (int)NULL, 20);
memset(buf, (int)NULL, 256);
print_menu();
scanf("%d", &sel);
switch(sel)
{
case 1:
strcpy(input_name, file_name(1));
E_cnt=compress(input_name); tree_sort();
make_tree();
search(c_head, buf, t);
strcpy(output_name, file_name(3));
write_header(E_cnt, input_name, output_name);
break;
case 2:
strcpy(input_name, file_name(5));
decompress(input_name);
break;
case 3:
exit(0);
default:
printf("잘못 입력하셨습니다!!\n");
}
}
return 0;
  • 가격3,000
  • 페이지수20페이지
  • 등록일2009.03.16
  • 저작시기2007.8
  • 파일형식압축파일(zip)
  • 자료번호#523350
본 자료는 최근 2주간 다운받은 회원이 없습니다.
청소해
다운로드 장바구니