C언어

로또 - 사용자가 뽑는 코드 - 숫자인지 아닌지 판별

joo_coding 2025. 3. 15. 15:08
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <ctype.h> // isalnum > 숫자이면 4 반환 (검사식==4)
                   // 인자로 받은 숫자의 ASCII 값을 기준으로 판별
                   // 숫자(ASCII 48 ~ 57)에 해당할 경우 1

int main()
{
    int user_pick;
    printf("숫자 입력: ");
    scanf("%d", &user_pick);

    int real_num; // 숫자인지 판단하는 변수
    real_num = isalnum(user_pick); // 변수에 검사값 저장
    printf("%d", real_num); // 숫자 맞으면 4 반환

}

 

아.. 유저가 숫자를 고르면

맨 처음에 숫자인지 아닌지 검사하려고 했는데

숫자인지 아닌지 검사하는 함수가 뭔지 모르겠음

isalnum은 아스키코드값으로 검사를 하는데

유저가 5를 입력하면 그걸 아스키코드로 변환한 다음에 검사를 해야하나..?

힘들거같은게 유저가 한자릿수만 고르는게 아니라

두자릿수도 고르니까, 두자릿수를 아스키코드로 변환하려면.. 상당히 복잡할듯

 

일단 과감히 포기한다..ㅎ