코딩테스트 & 문제 풀이
[C]프로그래머스_Lv1 : 핸드폰 번호 가리기
Hicecream
2023. 5. 14. 15:47
2022년 7월 22일에 작성됨
https://school.programmers.co.kr/learn/courses/30/lessons/12948
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
문제 분석
4~20자리인 전화번호가 주어졌을 때, 뒷 4자리를 제외한 나머지 숫자를 전부 *로 바꾼다.
소스 코드 (⭕)
#include <stdio.h>
#include <stdbool.h>
#include <stdlib.h>
char* solution(const char* phone_number) {
char* answer = (char*)malloc(1);
strcpy(answer, phone_number); // phone_number의 문자열을 answer로 복사
for (int i = 0; i < strlen(phone_number) - 4; i++) { // 뒷 4자리를 제외한 부분을
answer[i] = '*'; // 모두 *로 바꾸기
}
return answer;
}
코드 분석
1. strcpy 함수를 사용하여 answer에 phone_number의 문자열을 복사시킨다.
2. 번호의 길이가 0부터 뒷 4자리를 제외한 숫자들을 모두 *로 바꾼다.
3. *로 바꾼 번호인 answer를 반환 한다.
end
알 것 같은데 모르겠어서 다른 분들의 코드를 참고하며 풀었다. strcpy 함수를 내가 배웠던가..? 배운지 얼마나 됐다고 벌써 기억이 가물가물..