어떤 부분이 잘못되었는지 알려주실분있으신가요 ㅜㅜ
하늘빛눈망울
질문 제목 : 질문 내용 :
원래 실행하면 이사진처럼 나와야 된다고 하거든요..?
이부분은 제가 어떻게 해본건데요.. 어디 부분이 틀렸나봐요 ㅜㅜ
#include stdio.h
void sortarray(int array[], int num);
void printarray(int array[], int num);
void exchangeinteger(int *x, int *y);
int main(void)
{
int n;
int a[] = {8, 3, 6, 2, 7, 1};
n = sizeof(a)/sizeof(a[0]);
printf(number of element is %d \n, n);
printf(array before sorting.\n);
printarray(a, n);
sortarray(a, n);
printf(array after sorting.\n);
printarray(a, n);
return 0;
}
void sortarray(int array[], int num)
{
int i, j;
for( i=0 ;inum-1; i++ )
{
for( j=1; jnum-1; j++ )
{
if( array[j-1] array[j] )
{
exchangeinteger( &array[j-1], &array[j] );
}
}
}
}
void printarray(int array[], int num)
{
int i;
for(i=0; inum; i++)
printf(%d , array[i]);
printf(\n);
}
void exchangeinteger(int *x, int *y)
{
int t = *x;
*x = *y;
*y = t;
}
이렇게 나오거든요 ㅜㅜ 어디부분이 잘못됬는지 알려주시면 정말 감사하겠습니다 ㅜㅜ
-
메이
와 바로 되네요;; ㅋㅋ 정말 감사드립니다 ㅜㅜ
-
해사랑해
비교해서 큰수들을 뒤로 보냈으면 그 수들은 빼고 반복하면 되죠.
for 문 중간에 jNum-1를 jNum-i 로 바꾸면 됩니다.