[C] 조건문 - 업 다운 게임 만들기

2022. 4. 24. 21:07·언어/C
728x90
#include <stdio.h>
#include <stdlib.h> // rand() 함수 포함 라이브러리
#include <time.h> // time() 함수 포함 라이브러리

int main(void)
{
	srand(time(NULL)); // 매번 다른 난수
	int number = (rand() % 100) + 1;
	printf("난수는 %d 입니다.\n\n", number);
	int answer = 0;
	int chance = 5;

	while (1)
	{
		printf("숫자를 맞혀보세요. 기회는 %d번 입니다. : ", chance--);
		scanf_s("%d", &answer);

		if (answer > number)
		{
			printf("Down\n");
		}
		else if (answer < number)
		{
			printf("Up\n");
		}
		else if (answer == number)
		{
			printf("정답입니다!\n");
			break;
		}
		else
		{
			printf("오류 발생\n\n");
		}

		if (chance == 0)
		{
			printf("게임이 끝났습니다.\n");
			break;
		}
	}

	return 0;
}

1~100 사이의 숫자 중 무작위로 지정된 한 숫자를 맞추는 게임이다.

​

<난수>

난수를 지정할 때는 반드시

#include <stdlib.h> // rand() 함수 포함 라이브러리
#include <time.h> // time() 함수 포함 라이브러리

이렇게 라이브러리를 지정해줘야 rand(), time()이 사용 가능하다.

int number = (rand() % 100) + 1;

위 코드는 1부터 100 사이의 무작위 함수를 number변수에 지정해주는 데 사용된다. 만약 0부터 20 중에서 난수를 지정해주고 싶다면,

int number = rand() % 20;

를 쓰면 된다.

​

<scanf_s>

기존 비쥬얼 스튜디오에서는 사용자에게 값을 받기 위해 scanf를 사용했다. 지금은 에러로 인해 프로그램이 실행되지 않는 경우를 피하기 위해 scanf_s 함수를 사용한다. 나도 사용자에게 정답값을 받기 위해 scanf_s를 사용했다.

scanf_s("%d", &answer);

나는 정수가 필요하기 때문에 사용자가 줄 값에 "%d"를 사용했다. 문자를 받기 위해서는 "%s", 실수를 위해서는 "%f" 등을 사용한다. 실수의 경우 소수점 아래 두 자리수만 출력하고 싶은 경우 "%.2f"라고 쓰면 된다.

728x90

'언어 > C' 카테고리의 다른 글

[C] define 매크로 함수 사용하기  (0) 2022.04.24
[C] 파일 입출력 - 비밀 일기 프로젝트  (0) 2022.04.24
[C] 배열 - 발모제 찾기 게임  (0) 2022.04.24
[C] 함수 - 컴퓨터와 가위바위보하기  (0) 2022.04.24
[C] 반복문 - 별로 피라미드 그리기  (0) 2022.04.24
'언어/C' 카테고리의 다른 글
  • [C] 파일 입출력 - 비밀 일기 프로젝트
  • [C] 배열 - 발모제 찾기 게임
  • [C] 함수 - 컴퓨터와 가위바위보하기
  • [C] 반복문 - 별로 피라미드 그리기
돌멩이수프
돌멩이수프
Information technology
  • 돌멩이수프
    WHAT DOES "IT" STAND FOR?
    돌멩이수프
  • 전체
    오늘
    어제
    • 분류 전체보기 (238)
      • 언어 (73)
        • html (3)
        • css (1)
        • java (6)
        • C (26)
        • C++ (2)
        • C# (29)
      • 공부 (7)
        • Unity (43)
        • 게임 서버 (26)
        • 네트워크 (5)
        • 데이터베이스 (7)
        • EFCore (19)
        • 기타 (14)
        • Git (5)
        • 운영체제 (1)
        • 소프트웨어공학 (21)
      • 2024-여름 (12)
      • 자기 관리 (3)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    C언어
    자바
    unity
    EFCore
    C
    네트워크
    라즈베리파이
    tcp
    Python
    게임서버
    Entityfamework
    coding
    HTML
    C#
    디자인패턴
    유니티
    java
    EntityFramework
    코딩
    백준
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.2
돌멩이수프
[C] 조건문 - 업 다운 게임 만들기
상단으로

티스토리툴바