본문 바로가기
Algorithm/C++

[프로그래머스 C] 문자열 다루기 기본 /strlen()

by imagineer_jinny 2021. 8. 25.

코딩테스트 연습 - 문자열 다루기 기본 | 프로그래머스 (programmers.co.kr)

 

코딩테스트 연습 - 문자열 다루기 기본

문자열 s의 길이가 4 혹은 6이고, 숫자로만 구성돼있는지 확인해주는 함수, solution을 완성하세요. 예를 들어 s가 "a234"이면 False를 리턴하고 "1234"라면 True를 리턴하면 됩니다. 제한 사항 s는 길이 1

programmers.co.kr

 

문제 설명

문자열 s의 길이가 4 혹은 6이고, 숫자로만 구성돼있는지 확인해주는 함수, solution을 완성하세요. 예를 들어 s가 "a234"이면 False를 리턴하고 "1234"라면 True를 리턴하면 됩니다.

제한 사항

  • s는 길이 1 이상, 길이 8 이하인 문자열입니다.

입출력 예

s return
"a234" false
"1234" true

 


- 문제 조건을 잘 읽자(읽고 싶은 부분만 읽지 말자)

- strlen 함수 몇번을 봤니..

- 아스키코드 문자부분들을 제외해야하나 생각했는데 생각해보니까 숫자(0-9)범위가 아닌걸 고르면 되잖아..?

 

 

풀이

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

// 파라미터로 주어지는 문자열은 const로 주어집니다. 변경하려면 문자열을 복사해서 사용하세요.
bool solution(const char* s) {
    
  if(strlen(s)!=4 && strlen(s)!=6) return false;
    
    for(int i=0;i<strlen(s);i++)
    {
        if(!(s[i]>='0'&&s[i]<='9'))
       
            return false;
        
    }
  return true;
}

댓글