관리 메뉴

사적공간

문자열을 입력받고 가장 빈번한 문자 출력 본문

KNOU_CS/C++

문자열을 입력받고 가장 빈번한 문자 출력

2sac 2024. 9. 27. 14:43
#include <iostream>
#include <cstring>
using namespace std;


int main() {
    char arr[20] = { "UUQUHSUTS" }; // 배열초기화 
    int len = strlen(arr); // 입력받은 문자열 길이 구하기 
    int dat[200] = { 0 }; // 숫자 배열 초기화 
    for (int i = 0; i < len; i++) {
        dat[arr[i]]++; // dat 배열에 입력받은 문자열의 아스키 정수 값을 첨자로 받아서 그 곳의 값을 1증가 시킴 
    }
    char k; 
    int many = dat[arr[0]]; // 가장 빈번한 문자를 얻기 위한 many 변수 
    for (int i = 0; i < len; i++) { 
        if (many <= dat[arr[i]])
        {
            many = dat[arr[i]]; // dat[arr[i]] 들 중에서 many보다 크면 그때부터 네가 many 다. 
            k = arr[i]; // many 에 해당하는 문자를 저장(계속 교체됨) 
            }
        }

    cout << "문자열에서 가장 빈번한 수는 : " << k; // 출력. 


    return 0;
}