Notice
Recent Posts
Recent Comments
Tags
more
Today
Total
«   2025/06   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30
관리 메뉴

SW 꿈나무

[Level 1][C] 가운데 글자 가져오기 본문

Algorithm/Programmers

[Level 1][C] 가운데 글자 가져오기

현식 :) 2020. 3. 26. 20:44
  • 문제

    단어 s의 가운데 글자를 반환하는 함수, solution을 만들어 보세요. 단어의 길이가 짝수라면 가운데 두글자를 반환하면 됩니다.

  • 제한 조건

    s는 길이 1 이상, 100 이하 스트링입니다.

  • Example

    Input 1 : "abcde"
    Input 2 : "qwer"
    Output 1 : "c"
    Output 2 : "we"
  • Code

    #include <stdio.h>
    #include <stdbool.h>
    #include <stdlib.h>
    #include <string.h>
    
    char* solution(const char* s) {
        int length = strlen(s);                          // 정수형 변수 length 선언 및 s의 길이 대입
        int check = length%2;                            // 정수형 변수 check 선언 및 length의 홀짝 여부 대입
        char* answer = (char*)malloc(2-check);           // answer에 2-check 크기의 메모리 동적 할당
    
        if(length%2==0) {                                // length가 짝수이면
            answer[0]=s[length/2-1];                     // answer 첫번째 자리에 s의 가운데 기준 왼쪽 문자 대입
            answer[1]=s[length/2];                       // answer 두번째 자리에 s의 가운데 기준 오른쪽 문자 대입
        }
        else {                                           // length가 홀수이면
            answer[0] = s[length/2];                     // answer에 가운데 문자 대입
        }    
        return answer;                                   // answer 반환
    }
Comments