디시인사이드 갤러리

갤러리 이슈박스, 최근방문 갤러리

갤러리 본문 영역

[질문,C언어]질문있어여ㅕㅕㅕㅕㅕㅕ

Header갤로그로 이동합니다. 2009.06.18 07:20:42
조회 66 추천 0 댓글 4

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

#define Frame_Pins 10

void Boiling_Score_Main();
void Boiling_Score_Output();
void Boiling_Score_Input();
void Boiling_Score_Calculation(int First_Pin,int Second_Pin,int Third_Pin,int NextOnOff,int Before_Strike,int Next_Frame_First,int Next_Frame_Second);

struct Boiling_Games_Times
{
 struct Boiling_Frames_Times
 {
  char Throwing_Ball[1];
 }BFT[Frame_Pins];
 int Final_Third;
}BGT[Frame_Pins];

int Game = 1;
int Frame = 0;
int Frame_Total[10] = {0};
int Spear;
int Strike;

void main()
{
 int i,j;

 system("mode con: lines=80");
 Boiling_Score_Main();

 for(i=0;i<Frame_Pins;i++)
 {
  for(j=0;j<Frame_Pins;j++)
  {
   BGT[i].BFT[j].Throwing_Ball[0] = \'0\';
   BGT[i].BFT[j].Throwing_Ball[1] = \'0\';
  }
 }
}

void Boiling_Score_Main()
{
 printf("\\n           볼           링           점           수           판\\n");
 printf("\\n                                          현재까지 Average : %.2f\\n",(float)Frame_Total[Frame]/Game);
 Spear = 0;
 Strike = 0;
 Boiling_Score_Output();
}

void Boiling_Score_Output()
{
 SYSTEMTIME Nowtime;
 GetLocalTime(&Nowtime);

 int i = 0;

 do{
   printf("\\n%8d / %2d / %2d %6d 게임\\n",Nowtime.wYear,Nowtime.wMonth,Nowtime.wDay,Game);
   printf("┌──┬───┬───┬───┬───┬───┬───┬───┬───┬───┐");
   printf("│ 1  │  2   │  3   │  4   │  5   │  6   │  7   │  8   │  9   │  10  │");
   printf("├──┼───┼───┼───┼───┼───┼───┼───┼───┼───┤");
   printf("│%2d%2d│%3d%3d│%3d%3d│%3d%3d│%3d%3d│%3d%3d│%3d%3d│%3d%3d│%3d%3d│%2d%2d%2d│",
     BGT[i].BFT[0].Throwing_Ball[0],BGT[i].BFT[0].Throwing_Ball[1],
     BGT[i].BFT[1].Throwing_Ball[0],BGT[i].BFT[1].Throwing_Ball[1],
     BGT[i].BFT[2].Throwing_Ball[0],BGT[i].BFT[2].Throwing_Ball[1],
     BGT[i].BFT[3].Throwing_Ball[0],BGT[i].BFT[3].Throwing_Ball[1],
     BGT[i].BFT[4].Throwing_Ball[0],BGT[i].BFT[4].Throwing_Ball[1],
     BGT[i].BFT[5].Throwing_Ball[0],BGT[i].BFT[5].Throwing_Ball[1],
     BGT[i].BFT[6].Throwing_Ball[0],BGT[i].BFT[6].Throwing_Ball[1],
     BGT[i].BFT[7].Throwing_Ball[0],BGT[i].BFT[7].Throwing_Ball[1],
     BGT[i].BFT[8].Throwing_Ball[0],BGT[i].BFT[8].Throwing_Ball[1],
     BGT[i].BFT[9].Throwing_Ball[0],BGT[i].BFT[9].Throwing_Ball[1],BGT[i].Final_Third);
   printf("│%4d│%6d│%6d│%6d│%6d│%6d│%6d│%6d│%6d│%6d│",
     Frame_Total[0],Frame_Total[1],Frame_Total[2],Frame_Total[3],Frame_Total[4],
     Frame_Total[5],Frame_Total[6],Frame_Total[7],Frame_Total[8],Frame_Total[9]);
   printf("└──┴───┴───┴───┴───┴───┴───┴───┴───┴───┘");
   Game--; i++;
 }while(Game);

 Game++;
 Boiling_Score_Input();
}

void Boiling_Score_Input()
{
 int Result_Frame_First = 0;
 int Result_Frame_Second = 0;
 int Result_Frame_Third = 0;
 int NextOnOff = 0;
 int Before_Strike = 0;
 int Next_Frame_First = 0;
 int Next_Frame_Second = 0;
 int StrikeOn;

 while( 1 )
 {  
  if( Frame > 9 )
  {
   Frame = 0;
   Game++;
   system("cls");
   Boiling_Score_Main();
  }

  while( 1 )
  {
   printf("→%d번째 Game의 %d Frame 첫번째에 쓰러트린 핀의 갯수는? ",Game ,Frame+1);

   if(NextOnOff == 0)
   {
    scanf("%d",&Result_Frame_First);
   }
   else if(NextOnOff == 1)
   {
    scanf("%d",&Next_Frame_First);
   }

   if(Result_Frame_First != 10 )
   {
    printf("→%d번째 Game의 %d Frame 두번째에 쓰러트린 핀의 갯수는? ",Game ,Frame+1);
    if(NextOnOff == 0)
    {
     scanf("%d",&Result_Frame_Second);
    }
    else if(NextOnOff == 1 && StrikeOn == 1)
    {
     scanf("%d",&Next_Frame_Second);
    }

    if(Result_Frame_First + Result_Frame_Second == 10)
    {
     if(Result_Frame_First == 10)
     {StrikeOn = 1;}
     NextOnOff = 1;
     Frame++;
    }
    else
    {
     NextOnOff = 0;
     Frame++;
    }
   }
   else
   {
    Before_Strike = 1;
    Result_Frame_Second = 0;
    Result_Frame_Third = 0;
   }
  }

  if( Frame == 9 && Result_Frame_First != NULL )
  {
   printf("→%d번째 Game의 마지막 Frame에 쓰러트린 핀의 갯수는? ",Game);
   scanf("%d",&Result_Frame_Third);
  }
  else
  {Result_Frame_Third = 0;}

  if( (Result_Frame_First > 10 || Result_Frame_Second > 10 ) || Result_Frame_First + Result_Frame_Second > 10 )
  {
   printf("Error! 볼링핀은 최고 10개까지만 쓰러뜨릴수 있습니다.\\n");
  }
  else
  {
   system("cls");
   Boiling_Score_Calculation( Result_Frame_First, Result_Frame_Second, Result_Frame_Third, NextOnOff, Before_Strike, Next_Frame_First, Next_Frame_Second );
   break;
  }
 }
 system("cls");
 Boiling_Score_Main();
}

void Boiling_Score_Calculation(int First_Pin,int Second_Pin,int Third_Pin,int NextOnOff,int Before_Strike,int Next_Frame_First,int Next_Frame_Second)
{
//Strike 처리
 if( Frame == 0 && First_Pin == 10 )
 {
  Strike++;
  Second_Pin = 10;
  Frame_Total[Frame] = First_Pin + Second_Pin;
  BGT[Game].BFT[Frame].Throwing_Ball[0] = \'X\';
  BGT[Game].BFT[Frame].Throwing_Ball[1] = \' \';
 }
 else if( Frame != 0 && ( First_Pin == 10 && Before_Strike == 1 ) )
 {
  Strike++;
  Frame_Total[Frame] = First_Pin + Second_Pin + Next_Frame_First + Next_Frame_Second;
  BGT[Game].BFT[Frame].Throwing_Ball[0] = \'X\';
  BGT[Game].BFT[Frame].Throwing_Ball[1] = \' \';
 }
 else if( Frame != 0 && ( First_Pin == 10 && Before_Strike == 0 ) )
 {
  Strike++;
  Frame_Total[Frame] = First_Pin + Next_Frame_First + Next_Frame_Second;
  BGT[Game].BFT[Frame].Throwing_Ball[0] = \'X\';
  BGT[Game].BFT[Frame].Throwing_Ball[1] = \' \';
 }
//Spear 처리
 if( First_Pin != 10 && First_Pin+Second_Pin == 10 )
 {
  Spear++;
  Frame_Total[Frame] = First_Pin + Second_Pin + Next_Frame_First;
  BGT[Game].BFT[Frame].Throwing_Ball[0] = \'/\';
  BGT[Game].BFT[Frame].Throwing_Ball[1] = \' \';
 }
//나머지 처리
 if( First_Pin + Second_Pin < 10 )
 {
  Frame_Total[Frame] = First_Pin + Second_Pin;
  BGT[Game].BFT[Frame].Throwing_Ball[0] = First_Pin;
  BGT[Game].BFT[Frame].Throwing_Ball[1] = Second_Pin;
 }

 Frame++;
 Boiling_Score_Main();
}


잠결에 막하다보니.. 처음엔 사소한걸 고치자고 막 수정하던도중에 꼬여버려서;

고수님들.. 좀 알려주세요 ㅠㅠ;

p.s : 걍 전부 다올림...ㅠㅠ 지적좀.. ㅠㅠ;

p.s2: 아 그리고 스트라이크랑 스페어 처리 잘 못하겠는데 충고나 조언좀요..

p.s3: 알고리즘님.. 아까 메일로 보내셨다는거 다시좀 보내주세여..

추천 비추천

0

고정닉 0

0

댓글 영역

전체 댓글 0
본문 보기

하단 갤러리 리스트 영역

왼쪽 컨텐츠 영역

갤러리 리스트 영역

갤러리 리스트
번호 제목 글쓴이 작성일 조회 추천
설문 끝까지 다 본 걸 후회하게 만든 용두사미 드라마는? 운영자 25/07/07 - -
AD 휴대폰 바꿀까? 특가 구매 찬스! 운영자 25/07/02 - -
271311 너희듷 [3] 어떡해갤로그로 이동합니다. 11.09.11 62 0
271310 로또 시발 5등 ㅋㅋㅋㅋㅋㅋㅋ 독담갤로그로 이동합니다. 11.09.11 24 0
271308 독담 너 이색기는 봅니다. [1] 꿀레(14.33) 11.09.11 35 0
271306 이제야찾았네 三didas갤로그로 이동합니다. 11.09.11 39 0
271304 살 잘찌는 체질은 개발자 하면 안된다. [1] 쵸쵸(219.251) 11.09.11 72 0
271303 니들 월요일 되면 로또 꼭 사라. 독담갤로그로 이동합니다. 11.09.11 37 0
271302 스포2 = 콜옵4 [1] 쵸쵸(219.251) 11.09.11 39 0
271301 스포2 잘만들었다. [3] 쵸쵸(219.251) 11.09.11 49 0
271300 홈페이지 레이아웃여.. [7] ㅇㅇ(121.169) 11.09.11 85 0
271299 형들 궁금한거 잇어여 [6] 궁금(182.214) 11.09.11 55 0
271298 아 시발 졷됨 ㅋㅋㅋ 내동생이 똥쌋는데 변기막힘 [6] 독담갤로그로 이동합니다. 11.09.11 195 0
271297 살잘찌는인간들힘들겠다 [2] Agangs갤로그로 이동합니다. 11.09.11 58 0
271296 라면에 넣을게 없는데 [1] 로하로하알로하갤로그로 이동합니다. 11.09.10 37 0
271294 횽들 나 입갤했는데.. [10] 에헤헤헿갤로그로 이동합니다. 11.09.10 72 0
271293 딸기알밥님 웹프로그래머에여? [4] ㅇㅇ(121.169) 11.09.10 73 0
271292 자기공부질문말고 과제질문 [5] 三didas갤로그로 이동합니다. 11.09.10 66 0
271291 컴돌이 대학 어디임 ㅇㅇ 말좀 해바 그냥 [1] 로하로하알로하갤로그로 이동합니다. 11.09.10 68 0
271290 아시바...메인보드가나갔나 三didas갤로그로 이동합니다. 11.09.10 20 0
271289 명지대도 인서울임?? [8] 독담갤로그로 이동합니다. 11.09.10 126 0
271287 그거 뭐냐 NHN 에서 지들이 학원 만들어서 채용한다는거 독담갤로그로 이동합니다. 11.09.10 93 0
271286 이거 malloc 뒤에다가 +1은 왜하는거예용? [9] 독담갤로그로 이동합니다. 11.09.10 136 0
271285 회사에서 맨날 논다고 하기 뭐해서 자기발전 해야 되는거 짱나지 않냐??? [1] 허세강갤로그로 이동합니다. 11.09.10 78 0
271284 탑밴드보고 느끼는거 없냐? [2] 쵸쵸쵸(219.251) 11.09.10 36 0
271283 앞으로 4년동안 나를 보게될거야. [2] 독담갤로그로 이동합니다. 11.09.10 57 0
271282 컴돌이가 영어를 그렇게 잘 한다면 생각놀이갤로그로 이동합니다. 11.09.10 57 0
271281 도와주세요~ 메틴이라는게임 핵만드는중... [3] 메튄프로그램(118.128) 11.09.10 688 0
271280 젊어서 si가는것도 나쁘진않다. [1] 쵸쵸쵸(219.251) 11.09.10 105 0
271279 니들은 실력을 글케좋은데 인서울 못하냐??? [12] 컴돌이(180.227) 11.09.10 166 0
271278 내 친구 이야기 (122.34) 11.09.10 69 0
271276 이해가 안되용 도와줘요 횽들 ㅜㅜ [6] 독담갤로그로 이동합니다. 11.09.10 69 0
271275 프리랜서 프로그래머들은 무슨일을하나요 [3] 박구갤로그로 이동합니다. 11.09.10 169 0
271274 형들 사회생활할때 공익이 좀 마이너스 요소야? [2] ㅇㅇ(61.33) 11.09.10 86 0
271273 님들아 치과의사도 고급인력입니까? 131313(223.222) 11.09.10 38 0
271272 프리랜서 장비 질문 [2] ㅍㅍ(122.34) 11.09.10 90 0
271271 컴돌이 영어올리지말고 컴퓨터 언어 올려줘 그럼 해석해봄 [5] 131313(223.222) 11.09.10 70 0
271270 혹시 stable-marriage algorithm에 아는횽들있음?? [3] 살려줘횽들(119.203) 11.09.10 53 0
271269 드디어 알아냄 시발 ㅜㅜ [3] 독담갤로그로 이동합니다. 11.09.10 69 0
271268 나보다 영어 잘하는 것들이 이거 해석해봐라 ㅋㅋㅋ [11] 컴돌이(180.227) 11.09.10 142 0
271267 프로그래머에대한 자부심을 갖고있나요? [4] 박구갤로그로 이동합니다. 11.09.10 108 0
271266 컴똘똘이 어그로 글 어디갓냐 [3] 로하로하알로하갤로그로 이동합니다. 11.09.10 48 0
271265 프겔러들은 이런생각안해봤음? 나는 자주생각하는데 [1] 131313(223.222) 11.09.10 35 0
271264 형님들 진짜 조언좀 해주세여!!! [5] 광주지라(121.137) 11.09.10 54 0
271262 한국의 실리콘벨리없음? 동생들이랑 같이 해보고싶은데 [1] 131313(223.222) 11.09.10 47 0
271261 포탈해라 두번 해라 [2] y녀6디리(220.118) 11.09.10 58 0
271258 명절에 공부이야기들 하지말고 뭐 먹었나 말해봅시다 [6] dot(114.202) 11.09.10 57 0
271257 강철의 연금술가 처럼 마법진 그리고 뭐 막 생기고 그러는 학문있었으면 좋 [3] 131313(223.222) 11.09.10 30 0
271254 군대 전역하고 공부하기 바뻐질떄 부터 친구들하고 슬슬멀어지던데 [4] 131313(223.222) 11.09.10 123 0
271253 공부가 필요없는 직업 [3] SuCo갤로그로 이동합니다. 11.09.10 450 0
271251 아무리 생각하고 검색해봐도 모르겠는데 이것좀 갈쳐줘 형 [4] 독담갤로그로 이동합니다. 11.09.10 85 0
271250 한영의 기초영문법부터 시작해라 쉑이드라. [2] 쵸쵸쵸(219.251) 11.09.10 102 0
뉴스 고건한, 박지훈·배인혁과 한둥지…YY엔터테인먼트와 전속계약 디시트렌드 07.05
갤러리 내부 검색
제목+내용게시물 정렬 옵션

오른쪽 컨텐츠 영역

실시간 베스트

1/8

뉴스

디시미디어

디시이슈

1/2