//app.h
void logo();
void ending();
void printmenu();
//프로그램 흐름 - 초기화
// 최초에 단 한번 실행
void app_init();
//프로그램 흐름 - 엔진
//반복 실행 코드
void app_run();
//프로그램 흐름 - 종료처리
//프로그램 종료시 단 한번 실행
void app_exit();
//baseball.h
void bb_gamestart();
void comnumberinit();
void usernumberinsert();
void numbercheck();
int is_gameexit();
//data.h
#define DATA_MAX 10
//std.h
// 프로그램에서 필요로하는 모든 h 를 include
#include <stdio.h>
#include <stdlib.h> //system()
#include <conio.h> //_getch()
#include <string.h> //strcpy_s()
#include <time.h> //time()
#include "data.h"
#include "app.h"
#include "baseball.h"
//app.c
#include "std.h"
void app_init()
{
srand((unsigned int)time(NULL));
logo();
}
void app_run()
{
char idx;
while (1)
{
system("cls");
printmenu();
idx = _getch();
switch (idx)
{
case '1': bb_gamestart(); break;
//case '2': book_printall(); break;
case '3': return;
}
system("pause");
}
}
void app_exit()
{
ending();
}
void logo()
{
system("cls");
printf("******************************************\n");
printf(" 2번째 프로그램 - 야구게임\n");
printf(" 2016/6/29\n");
printf(" cjh\n");
printf("******************************************\n");
system("pause");
}
void ending()
{
system("cls"); //출력화면 비우기
printf("******************************************\n");
printf(" 프로그램을 종료합니다.\n");
printf("******************************************\n");
system("pause");//아무키나 입력받기
}
void printmenu()
{
printf("******************************************\n");
printf(" [1] 야구게임\n");
printf(" [2] 결과보기\n");
printf(" [3] 프로그램 종료\n");
printf("******************************************\n");
}
//baseball.c
#include "std.h"
#pragma warning(disable:4996)
int com_number[3];
int user_number[3];
int s = 0, b = 0;
void comnumberinit()
{
com_number[0] = (rand() % 9) + 1;
while (1)
{
com_number[1] = (rand() % 9) + 1;
if (com_number[0] != com_number[1])
break;
}
while (1)
{
com_number[2] = (rand() % 9) + 1;
if (com_number[2] != com_number[0] &&
com_number[2] != com_number[1])
break;
}
}
void usernumberinsert()
{
printf(">> 숫자입력(ex 3 4 5) : ");
scanf("%d%d%d", &user_number[0], &user_number[1], &user_number[2]);
}
void numbercheck()
{
int i,j;
for (i = 0; i < 3; i++){
for (j = 0; j < 3; j++){
if (com_number[i] == user_number[j])
{
if (i == j) s++;
else b++;
break;
}
}
}
printf("S : %d, B : %d\n", s, b);
}
int is_gameexit(){
if (s == 3) {
s = b = 0;
return 1;
}
else{
s = b = 0;
return 0;
}
}
void bb_gamestart()
{
comnumberinit();
printf("%d : %d : %d\n", com_number[0], com_number[1], com_number[2]);
while (1)
{
usernumberinsert();
numbercheck();
if (is_gameexit() == 1)
{
printf("good!!!\n");
break;
}
}
}
//소스.c
#include "std.h"
int main()
{
app_init();
app_run();
app_exit();
return 0;
}
'00.Project' 카테고리의 다른 글
C++학생관리프로그램(mini) (0) | 2018.05.10 |
---|---|
자판기프로그램(mini) (0) | 2018.04.30 |
간단한 관리프로그램(mini) (0) | 2018.04.28 |
댓글