게시판 즐겨찾기
편집
드래그 앤 드롭으로
즐겨찾기 아이콘 위치 수정이 가능합니다.
파일 입출력 질문좀요 ㅠ
게시물ID : computer_68776짧은주소 복사하기
작성자 : 포이즌
추천 : 0
조회수 : 210회
댓글수 : 0개
등록시간 : 2012/12/15 17:01:40

그냥 흔한 컴공과 1학년 학생인데요 

이번 텀프로젝트로 2인1조 주제 자유여서 저희 팀은 오목을 하기로했는데 

교수님이 네트워크대전방식과 DB로 로그인+전적 저장기능을 넣으라고하셔서

도서관에서 책 빌려서 배우지도않은 2,3학년껄 공부하다 결국 멘붕하고

네트워크는 TCP/IP 입문까지 했는데 발표일까지 얼마 안남아서 결국 포기하고

DB도 노력했는데 SQL 멘붕.. 모르겠어서ㅠㅠ 결국 배웠던것중 파일입출력을 이용해서

전적을 저장하자! 라고 결정!  

해서... 우선 전역변수를 a,b를 두고

오목 메인함수를

void main()

{

init_board();

while(1)

{

show_board();

if( input_user() )

{

if( check_win() )

{

printf("%s가 승리했습니다.\n", (user==1)?"●":"○");

if(user==1)

{

a++;

}

else

{

b++;

}

printf("● %d승 ○ %d승\n", a,b);

record();

break;

}

// 흑과백 교대하기.

user = (user==1)?2:1;

}

system("cls");

}

}


이렇게 두고  이기면 txt파일로 


int record()

{

FILE * fp = fopen("winrecord.txt", "wt");

fprintf(fp, "● %d승 ○ %d승\n", a,b);

fclose(fp);

return main();

}



이렇게 저장하게끔 했는데  이기면 txt파일로 잘 저장됩니다. 

계속하면 계속 올라가는데 문제는!  

스위치로 케이스해서 x 누르면 쇼 꺼지게 하거나 아니면 그냥 닫기하고 

다시 실행하면 아직까진 txt파일에 기존 전적이 저장되있는데 이제 

다시 새로킨 쇼에서 흑돌이나 검은돌이 이기면 여태 있던 전적이 사라지고 다시 1:0  이렇게

전적이 초기화됩니다 ㅠ 아마 저 record함수에서

쇼를 새로 시작하면 기존에 txt파일이 있던 없던 다시 파일 스트림을 같은 이름으로 열어버리니깐

원래 있던건 사라지고 새로 저장되는것같은데

원래 있던 데이터에 계속 누적해서 승률이 + 되게끔 어떻게 할수없을까요..?ㅠ 


발표일까지 3일 남았는데 답이 안나와서 이렇게 글을 올려봅니다ㅠ


전체 추천리스트 보기
새로운 댓글이 없습니다.
새로운 댓글 확인하기
글쓰기
◀뒤로가기
PC버전
맨위로▲
공지 운영 자료창고 청소년보호