반응형
C 예제.
선택 정렬 과 검색.
8자리의 배열 변수에 정렬되있지 않은 원소를 채워주고 선택 정렬을 통해 정렬 한뒤,
내가 찾고자 하는 값을 입력받아 몇번째 자리에 있는지 알려주는 예제.
#includevoid SelectionSort(int a[], int size) // 선택 정렬 함수. { int i, j, t, min, temp; printf("\n정렬할 원소 : "); for (t = 0; t < size; t++) printf("%d ", a[t]); printf("\n\n-------------- 선택 정렬 수행 --------------\n"); for (i = 0; i < size - 1; i++) { min = i; for (j = i + 1; j < size; j++) { if (a[j] < a[min]) min = j; } temp = a[i]; a[i] = a[min]; a[min] = temp; printf("\n%d 단계 : ", i + 1); for (t = 0; t < size; t++) printf("%3d ", a[t]); } printf("\n"); } int search(int a[], int size) // 검색을 위한 함수. { int i = 0; int value = 0; printf("\n찾고자 하는 값(종료 -1) : "); scanf("%d", &value); // 찾을값 입력 부분. fflush(stdin); if(value == -1) return -1; for(i = 0; i < size; i++) { if(a[i] == value) { printf("찾는 값은 [%d]번째 있습니다.\n", i); return 0; } } printf("[%d] 값을 찾을수 없습니다.\n", value); return 0; } void main() { int list[8] = { 69, 10, 30, 2, 16, 8, 31, 22 }; int ret = 0; int size = 8; SelectionSort(list, size); while(1){ ret = search(list, size); if(ret == -1) break; } getchar(); }
반응형
'C/C++ > 예제' 카테고리의 다른 글
[C 예제] CHAR -> INT 형으로 변환 해주는 함수. (0) | 2014.06.23 |
---|---|
[C 예제] 과체중 계산 하기 (0) | 2014.06.03 |
[C 예제] 영화관 좌석 예매. (0) | 2014.05.30 |
[C++ 예제] 삽입, 선택 정렬 (0) | 2014.05.29 |
[C 예제] 간단한 주사위 게임. (0) | 2014.05.29 |