C :: 문자 관련 함수 헤더

J·2024년 5월 21일

C언어

목록 보기
4/18
post-thumbnail

#include <ctype.h>

: 문자 관련 함수 선언된 헤더

함수 isalpha : 영문자인지 판별
함수 isupper : 대문자 판별
함수 islower : 소문자 판별
함수 isdigit : 숫자 판별
함수 toupper : 대문자로 변환
함수 tolower : 소문자로 변환

ex.

문자(영문자, 숫자)를 입력받고,
해당 문자가 영문자(대문자,소문자)/숫자에서 몇번째 문자인지를 출력하라.
만약, 영문자(대문자, 소문자)를 입력받을 시, 대소문자 반전한 결과값도 출력하라.

    1. 영문자 or 숫자 인지 판별
        2. 영문자라면 대문자 or 소문자 인지 판별
            3. 소문자라면 몇번째인지 출력.
             + 소문자를 대문자로 반전한 출력.
            4. 나머지 대문자 라면 몇번째인지 + 반전한 출력.
    5. 숫자라면 몇번째인지 출력.
    6. 나머지 둘다 아니라면 아니라고 출력.
char input_char;

    printf("문자를 입력하세요: ");
    scanf(" %c", &input_char); // 문자 입력 받기

    if (isalpha(input_char)) { // 입력된 문자가 영문자인 경우
        if (islower(input_char)) { // 소문자인 경우
            printf("%c는 영문자 소문자 중 %d번째이며, 대문자로 변환하면 %c입니다.\n",
                input_char, input_char - 'a' + 1, toupper(input_char));
        }
        else { // 대문자인 경우 isupper
            printf("%c는 영문자 대문자 중 %d번째이며, 소문자로 변환하면 %c입니다.\n",
                input_char, input_char - 'A' + 1, tolower(input_char));
        }
    }
    else if (isdigit(input_char)) { // 입력된 문자가 숫자인 경우
        printf("%c는 숫자 중 %d번째입니다.\n", input_char, input_char - '0');
    }
    else { // 그 외의 경우 (영문자나 숫자가 아닌 경우)
        printf("올바르지 않은 입력입니다.\n");
    }
profile
나야

0개의 댓글