신입 개발자 공부 과정

C언어 - 배열에 숫자를 입력 받고 높은 순서대로 출력하기 본문

C/공부

C언어 - 배열에 숫자를 입력 받고 높은 순서대로 출력하기

Lewisjkim 2022. 2. 4. 17:52

문제=
학생들의 성적을 입력받고 높은 순으로 정렬하는 프로그램을 만들어 보자
-3명의 점수를 입력받아라

#include <stdio.h>
int main() {
	int scores[3];
	int max;
	int i, j, h;
	printf("학생들의 성적을 입력해 주세요:\n");
	for (i = 0; i < 3; i++)
	{
		scanf_s("%d", &scores[i]);//배열에 입력
	}
	for (j = 0; j < 3; j++)
	{
		for (h = 0; h < 2; h++)
		{
			if (scores[h] < scores[h + 1])
			{
				max = scores[h + 1];//큰 수를 max로 정의
				scores[h + 1] = scores[h];//작은 수를 큰 수 배열로 초기화
				scores[h] = max;//큰 수인 max를 작은 수 배열로 초기화
								//곧 다음 수가 크다면 큰 수가 앞으로
								//나올 수 있게 위치 바꿔준다
			}
		}
	}
	printf("성적이 높은 순으로 확인하면=\n");
	for (i = 0; i < 3; i++)
	{
		printf("%d\n", scores[i]);
	}
	return 0;
}

결과값=
18
29
26을 입력하였다.