728x90
반응형

문제 : http://www.jungol.co.kr/bbs/board.php?bo_table=pbank&wr_id=80&sca=10c0

 

JUNGOL

 

www.jungol.co.kr

문제

자료의 개수 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
반응형
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기