[CS50] Array - 문자열의 활용

배정규·2021년 1월 27일
1

cs50

목록 보기
8/14
post-thumbnail

문자열의 활용

학습 목표

문자열을 탐색하고 일부 문자를 수정하는 코드를 구현할 수 있다.

핵심 단어

  • strlen
  • toupper

문자열 탐색 및 수정

사용자로부터 문자열을 입력받아 대문자로 바꿔주는 프로그램을 아래와 같이 작성할 수 있습니다.

먼저 사용자로부터 입력받은 문자를 s라는 변수에 저장한다.
그리고 s의 길이만큼 for 루프를 돌면서, 각 인덱스에 해당하는 문자가 'a'보다 크고 'z'보다 작은지 검사한다.
즉, 소문자인지 검사하는 것과 동일하다.
여기서 문자의 대소비교가 가능한 이유는 ASCII값, 즉 그 문자가 정의되는 ASCII 코드 상에서의 숫자값으로 비교할 수 있기 때문이다.
또한 알파벳의 아스키 값을 잘 살펴보면 각 알파벳의 소문자와 대문자는 32씩 차이가 남을 확인할 수 있다.
따라서 각 문자가 소문자인 경우 그 값에서 32를 뺀 후에 '문자'형태로 출력하면 대문자가 출력이 된다.

이와 동일한 작업을 수행하는 함수가 ctype 라이브러리에 toupper() 이라는 함수로 정의되어 있다.
이를 이용하면 아래와 같이 대문자 변환 프로그램을 쉽고 간단하게 작성할 수 있다.

profile
Seize the day

0개의 댓글