이것좀 봐주세요.ㅠㅠ
초코맛사탕
#include stdio.h
#include stdlib.h
void insertion_sort(int[], int);
void main()
{
int i, j, append_step=3, array_length=5, index=0;
int *data = (int*)malloc(sizeof(int)*array_length);
FILE *fp=fopen(data.txt, r);
while(!feof(fp))
{
fscanf(fp,%d, &data[index]);
if(++index=array_length)realloc(data, sizeof(int)*(array_length+=append_step));
}
for(i=0; iindex-1; i++)
printf(%d \n, data[i]);for(j=0; j1001; j++)
{
printf(-----Sorted Data : %d-----\n,j);
insertion_sort(data,index-1);
for(i=0; iindex-1; i++)
printf(%d \n, data[i]);
}
fclose(fp);
free(data);} // End of main
void insertion_sort(int* list, int n)
{
int i, j;
int v;
for (i=1; in; i++)
{
v=list[i];
for(j=i-1; j=0 && list[j]v ;j--)
list[j+1]=list[j];
if(j+1!=i)
list[j+1]=v;
}
}
조교님이realloc부분이 잘못되었다고 하셨는데, 이거 잘 돌아가거든요.ㅠㅠ
잘못된 사용부분을 지적해주시면 감사하겠습니다.
-
차오름
안정성 때문이라는 답변을 얻었습니다. 그런데 함수부분이 아닌 프로그램 전체를 1000번돌리라는 의미였다고 하시네요. 원래 이렇게 테스트 하나요?-_-
-
거늘
프로그램이 잘 돌아가면 아무런 문제가 없는 것입니다.
어디가 잘못되었는지 못찾으면 조교님한테 질문을 하는 것이 더 좋겠습니다.