:: 게시판
:: 이전 게시판
|
이전 질문 게시판은 새 글 쓰기를 막았습니다. [질문 게시판]을 이용바랍니다.
통합규정 1.3 이용안내 인용"Pgr은 '명문화된 삭제규정'이 반드시 필요하지 않은 분을 환영합니다.법 없이도 사는 사람, 남에게 상처를 주지 않으면서 같이 이야기 나눌 수 있는 분이면 좋겠습니다."
09/04/15 23:26
라인을 통째로 읽는 함수를 쓰는게 편해보이지만 굳이 fscanf로 하시겠다면
일단 배열은 4*3배열인데 for루프는 4*4 루프입니다. 따라서 그걸 바꿔줘야겠고... 각 행이 끝날 때마다 개행문자(\n)를 처리해야겠네요. 그걸 생각하고 대충 해보면 for(i=0; i<4; i++) for(j=0; j<3; j++) { fscanf(fp, "%c", &aa[i][j]); fscanf(fp,"%c",&temp); } 이런식의 루프구조가 되어야 합니다. 개행문자는 그냥 임시변수에 던져 버리고 숫자 값들만 배열에 저장하는거죠.
09/04/15 23:28
첨언하자면 이런 식의 문제를 처리할 때 머리로 일단 분석을 하는 것이 먼저겠지만 프로그램 실행을 TRACE하는 것이 중요해요. 디버깅 툴 사용법을 먼저 익히시기를 권해드립니다.
09/04/15 23:28
라인을 통째로 읽는 함수라 하면
따로 그런 함수를 만드는게 낫다는건가요? 저도 굳이 fscanf 로 하려는 생각은 없어서요. 한 라인씩 읽으려면 fgets 함수를 써야할까요..?
09/04/16 11:19
char szTmp[8];
fgets( szTmp, 8, fp ); for ( int i = 0 ; i < 3 ; i++ ) a[0][i] = szTmp[i] - '0'; 이런식으로 만들면 좀더 편하겠죠? 좀 꼼수긴 하지만...
09/04/16 19:29
AhnGoon님// 크크크크 그야말로 경험이 녹아있는 꽁수군요 크크크크
레포트에 낼 거라면 저러면 아마 교수님이 싸늘하게 쳐다볼겁니다. 크크크크 현장에서야 물론 강추-_-b
|