#include <stdio.h>
void printArr(int arr[], int arrSize);
void bubbleSort(int arr[], int arrSize);
void selectionSort(int arr[], int arrSize);
int main()
{
int arr[5] = { 3, 5, 4, 1, 2 };
printArr(arr, sizeof(arr) / sizeof(int)); // 함수 호출
bubbleSort(arr, sizeof(arr) / sizeof(int));
selectionSort(arr, sizeof(arr) / sizeof(int));
printArr(arr, sizeof(arr) / sizeof(int));
return 0;
}
void printArr(int arr[], int arrSize)
{
for (int i = 0; i < arrSize; i++) // arrsize 만큼 arr 배열에 값넣기
printf("%d ", arr[i]);
printf("\n");
}
void bubbleSort(int arr[], int arrSize)
{
for (int i = 0; i < arrSize; i++)
{
for (int j = 0; j < (arrSize - 1) - i; j++)
{
if (arr[j] > arr[j + 1]) // arr[j]번쨰의 값이 j+1의 자리보다 큰 경우 비교하여
{
int temp = arr[j]; //내림차 순으로 정렬
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
}
void selectionSort(int arr[], int arrSize) //선택 정렬(오름차순)
{
int minIndex = 0;
for (int i = 0; i < arrSize - 1; i++)
{
minIndex = i;
for (int j = i + 1; j < arrSize; j++)
{
if (arr[j] < arr[minIndex])
minIndex = j;
}
int temp = arr[i];
arr[i] = arr[minIndex];
arr[minIndex] = temp;
}
}
'Basic C Language' 카테고리의 다른 글
#17 . 별로 간단한 모양 찍기 (0) | 2023.04.19 |
---|---|
#16. 2D_array (0) | 2023.04.19 |
#14. Array(배열) (0) | 2023.04.19 |
#13. Function 2 (1) | 2023.04.19 |
#12. Function(함수) (0) | 2023.04.19 |