도전 프로그래밍2 - 5번문제

 

 

배열에 저장되어 있는 요소들을 내림차순으로 정렬하는 함수 DesSort를 정의하자. 

그리고 이 함수를 호출하는 예제를 작성해보자.

 

일단 길이가 7인 int형 배열을 선언해서 프로그램 사용자로부터 7개의 정수를 입력 받도록 하자. 

 

그리고 입력 받은 정수를 내림차순으로 정렬하기 위해서, 배열을 인자로 전달하면서 DesSort 함수를 호출하고,

제대로 정렬이 되었는지 확인하기 위해 배열의 요소들을 순서대로 출력해보자. 

#include <stdio.h>
/*
도전 프로그래밍2 - 열혈C 333pg
*/

void DesSort(int *arr);
void Print(int *arr);

int target[7];
int len = sizeof(target) / sizeof(int);		//len==7

void DesSort(int *arr)
{
	int temp, i, j;
	for (j = 0; j < len - 1; j++)
	{
		for (i = 0; i < len - 1; i++)
		{
			if (arr[i] < arr[i + 1])
			{	//자리교환 
				temp = arr[i];
				arr[i] = arr[i + 1];
				arr[i + 1] = temp;
			}
		}
	}
}
void Print(int *arr)
{
	int i = 0;
	for (i; i < len; i++)
	{
		printf("%d ", arr[i]);
	}
	printf("\n");
}
int main()
{

	int i;
	//정수 7개 입력받기 
	for (i = 0; i < 7; i++)
	{
		scanf("%d", &target[i]);
	}

	DesSort(target);
	Print(target);
	return 0;
}

 

728x90

+ Recent posts