• 카테고리

    질문 & 답변
  • 세부 분야

    프로그래밍 언어

  • 해결 여부

    미해결

scanf_s오류

21.01.09 20:01 작성 조회수 87

0

scanf_s 를 사용할 때마다 에러가 나는데 선언해야 하는 게 있는건가요?

답변 1

답변을 작성해보세요.

0

bee님의 프로필

bee

질문자

2021.01.09

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

int getRandomNumber(int level);
void showQuestion(int level, int num1, int num2);
void success();
void fail();

int main(void)
{
//문이 5개가 있고, 각 문마다 점점 어려운 수식 퀴즈가 출제 (랜덤)
//맞히면 통과, 틀리면 실패
srand(time(NULL));
int count = 0;
for (int i =1; i < 5; i++)
{
int num1 = getRandomNumber(i);
int num2 = getRandomNumber(i);
showQuestion(i, num1, num2);

int answer = -1;
scanf_s("%d", &answer);
if (answer == -1)
{
printf("프로그램을 종료합니다\n");
break;
}
else if(answer == num1 * num2)
{
success();
count++;
}
else
{

fail();
}
}
return 0;
}

int getRandomNumber(int level)
{
return rand() % (level * 7) + 1;
}

void showQuestion(int level, int num1, int num2)
{
printf("\n\n\n########## %d 번째 비밀번호 #######\n", level);
printf("\n\t%d * %d 는?\n\n", num1, num2);
printf("#################################\n");
printf("\n비밀번호를 입력하세요 (종료 : -1) >> ");
}
void success()
{
printf("\n >> Good ! 정답입니다 \n");
}
void fail()
{
printf("\n >> 땡 ! 틀렸습니다 \n");
}