백준(BaekJoon)

[BaekJoon/C] No.1427 : 소트인사이드

ekdnjs510 2024. 7. 7. 16:54
728x90

https://www.acmicpc.net/problem/1427

No.1427 문제

 

문제해석

문자형 배열을 통해 수를 입력받고 입력받은 수를 순회하며 비교하여 내림차순으로 정렬하도록 하는 소스코드를 작성합니다.

 

소스코드 & 문제해결

 

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>

int main(void)
{
    char num[11] = { 0, };
    scanf("%s", num); //문자열로 사용자에게 숫자 입력받습니다
    int size = strlen(num); //문자열의 길이를 계산
    int tmp; //두 문자 교환할 때 사용할 임시 변수

	//바깥 반복문을 통해 문자를 순회하며 안쪽 반복문을 통해 다음 문자와 비교하여 내림차순으로 저장
    for (int i = 0; i < size; i++)
    {
        for (int j = i; j < size; j++)
        {
            if (num[i] < num[j])
            {
                tmp = num[i];
                num[i] = num[j];
                num[j] = tmp;
            }
        }
    }
    for (int i = 0; i < size; i++) //내림차순으로 문자를 출력
    {
        printf("%c", num[i]);
    }
}

 

 

예제 입출력 결과

728x90