연락처에서 sort라는 함수를 지나면 퀵정렬로 알파벳 순으로 나열하도록 만든 코드입니다 하지만 실행할때마다 프로그램 중지가 뜹니다 ..ㅠㅠ 뭐가 문제인가요?ㅠㅠ 과정상 메인 함수는 sort함수를 실행시키는 것으로 하였습니다.
혹시 아시는분이 있다면 부탁드립니다 ㅠㅠㅠ
typedef struct
{
int num;
char name[20];
char phoneNumber[20];
}Contact;
Contact contact[1000];
void quick(Contact contact[],int left, int right,int k)
{
int i,j,l;
Contact t,s;
if(left<right)
{
s=contact[left];
i=left; j=right+1;
while(1)
{
while((contact[++i].name[k])<(s.name[k]));
while((contact[--j].name[k])>(s.name[k]));
if(i>=j) break;
t=contact[i]; contact[i]=contact[j]; contact[j]=t;
}
contact[left]=contact[j]; contact[j]=s;
quick(contact,left,j-1,k);
quick(contact,j+1,right,k);
}
}
void sort()
{
int i,ret,j,k;
for(i=19;i>=0;i--)
quick(contact,0,count-1,i);
}