고양이와 코딩

[프로그래머스] 모음 제거/배열의 평균값 본문

C

[프로그래머스] 모음 제거/배열의 평균값

ovovvvvv 2025. 1. 5. 21:11
728x90

1. 모음 제거

#include <stdio.h>
#include <stdbool.h>
#include <stdlib.h>

char* solution(const char* my_string) {
    char vowels[] = {'a', 'e', 'i', 'o', 'u'};
    int str_len = strlen(my_string);
    char* answer = (char*)malloc(str_len + 1);
    int idx = 0;
    
    for(int i = 0; i < str_len; i++){
        bool is_vowel = false;
        
        for(int j = 0; j < 5; j++){
            if(my_string[i] == vowels[j]){
                is_vowel = true;
                break;
            }
        }
        if(!is_vowel){
        answer[idx++] = my_string[i];
        }
    }
    answer[idx] = '\0';
    return answer;
}

vowels 는 배열로 선언. 
answer는 얼마가 될 지 모르는 문자열을 동적으로 할당하는것이므로 포인터가 필요!

str_len + 1은 문자열 뒤 '\0' 공백이 차지하는 자리를 고려한것

 

 

 

2. 배열의 평균값

 

#include <stdio.h>
#include <stdbool.h>
#include <stdlib.h>

// numbers_len은 배열 numbers의 길이입니다.
double solution(int numbers[], size_t numbers_len) {
    double sum = 0;
    double answer = 0;
    
    for(int i = 0; i < numbers_len; i++){
        sum += numbers[i];
    }
    answer = sum / numbers_len;
    return answer;
}

 

'C' 카테고리의 다른 글

[LeetCode] Merge Two Sorted Lists  (0) 2024.11.24
[LeetCode] Valid Parentheses  (0) 2024.11.23
[LeetCode] Longest Common Prefix  (3) 2024.11.12
[LeetCode] Roman to Integer  (1) 2024.11.10
[LeetCode] Palindrom number  (0) 2024.11.10