728x90
반응형
문제 : http://www.jungol.co.kr/bbs/board.php?bo_table=pbank&wr_id=80&sca=10c0
문제
자료의 개수 7을 매크로 상수로 정의하여 자료의 개수만큼 정수를 입력받아 입력받은 순서대로 앞에서부터 마지막까지 가면서 바로 뒤의 숫자와 비교하여 크면 교환한다. 이러한 작업을 세 번 반복한 후 그 결과를 하나의 행에 공백으로 구분하여 출력하는 프로그램을 작성하시오.
입력 예
15 20 41 8 26 33 19
출력 예
8 15 20 19 26 33 41
Hint!
버블정렬에서 i를 N-1부터 N-3까지 3번 실행하면 된다.
코드 :
# include <stdio.h>
# define seven 7
int main()
{
int arr[seven]={0,};
int i,j,tmp;
for(i=0; i<seven; i++)
scanf(" %d",&arr[i]);
for(i = 0; i<3; i++)
{
for(j = 0; j<seven-1; j++)
{
if(arr[j] > arr[j+1])
{
tmp = arr[j+1];
arr[j+1] = arr[j];
arr[j] = tmp;
}
}
}
for(i = 0; i<seven; i++)
{
printf("%d ",arr[i]);
}
}
728x90
반응형
최근댓글