저장 파일 값이 이상하게 나와요
고독
파일 저장 까지는 되는데 저장된 txt 파일을 열어보면 학번하고 이름은 제대로 나오는데 점수부분에서 값이 이상하게 나와요 예를 들어 45를 입력하면 438211이라는 이런값이 나와요 점수를 입력하는 국어, 영어, 수학 부분이 잘 못된거 같은데 뭐가 잘못된 건지 모르겠네요. 수정 부탁드립니다질문 내용 :
int loadlist() {
file* fp;
int i = 0;
// 파일열기 파일이 없으면 새로만들기
if((fp = fopen(data.txt, rt)) == null) {
// 파일이 존재하지 않으면 새로 파일을 만들고 0을 리턴
if((fp = fopen(data.txt, wt)) == null) {
printf(파일 생성실패);
exit(1);
}
fclose(fp);
return 0;
}
// 파일 descriptor를 맨 처음으로 옮긴다.(리와인드 )
rewind(fp);
// 파일에서 한 라인씩 읽어서 각 변수에 넣는다.
while(!feof(fp))
fscanf(fp, %s\t%s\t%d\t%d\t%d, class1[i].stu_num, class1[i].stu_name, &class1[i].kor, &class1[i].eng, &class1[i].mat);
// 파일 종료
fclose(fp);
// 리스트의 개수를 리턴
return i;
}
// 업데이트된 파일 저장
void savelist()
{
file* fp;
// 임시 파일을 만든다.
if((fp = fopen(data.tmp, wt)) == null) {
printf(파일 에러);
exit(1);
}
// 리스트를 임시파일에 기록한다.
for(i = 0; i count; i++) {
fprintf(fp, %s\t%s\t%d\t%d\t%d\n, class1[i].stu_num, class1[i].stu_name, &class1[i].kor, &class1[i].eng,&class1[i].mat);
}
// 임시파일을 닫는다.
fclose(fp);
// 이전의 리스트파일을 삭제
unlink(data.txt);
// 임시파일을 리스트파일로 이름 변경
rename(data.tmp, data.txt);
}
-
딸기우유 2023-10-15
아.. ㅋㅋ.. 제가 설명을 잘못 이해해서 그런거네요.. 수다님 말처럼 하니 잘되요.. 감사합니다.^^
-
캐릭터 2023-10-15
그래도 여전히 점수에서 값이 이상하게 나와요.. 왜 그럴까요?..ㅠ.ㅠ
-
한무릎 2023-10-15
scanf나 fscanf함수에서는 \\t, \\n 등을 사용하지 않습니다.
그리고 점수의 출력에서 %d로 출력할 때에는 &를 사용하지 않습니다.
번호 | 제 목 | 글쓴이 | 날짜 |
---|---|---|---|
2691224 | 인자관련 질문입니다. (2) | 아잉형님 | 2025-04-11 |
2691196 | 원형 큐와 스택에서의 문제해결 (2) | 반혈 | 2025-04-11 |
2691169 | 동적할당 어디가 잘못된걸까요. | 츠키 | 2025-04-11 |
2691082 | puts vs printf | 리네 | 2025-04-10 |
2691058 | (C언어) 구구단을 작성해 봤는데 문제가 발생했습니다. (6) | 제나 | 2025-04-10 |
2690947 | 윈도우 메모장에서 버츄얼박스 우분투 붙여넣기 질문 (1) | 유우 | 2025-04-09 |
2690920 | 무슨 의미 인가요? | 딸기맛캔디 | 2025-04-09 |
2690891 | c++ 은행계좌 프로그램 | 알찬마루 | 2025-04-08 |
2690834 | c언어 if문에서 출력 질문합니다 ㅜㅜ (2) | 파랑새 | 2025-04-08 |
2690809 | c언어 질문좀 부탁드리겠습니다 | 개구리 | 2025-04-08 |
2690777 | 말 표현에서 궁금한점이 있습니다. 배열을 통째로 넘겨받으려면 매개변수로 배열을 선언할 수 있어야한다? (8) | 별햇님 | 2025-04-07 |
2690749 | 피라미드 질문드립니다 (for문 한개) | 도래솔 | 2025-04-07 |
2690718 | 함수 포인터반환 함수 질문 | 에드워드 | 2025-04-07 |
2690685 | 2중for문 도와주세여..;; | 흰추위 | 2025-04-07 |
2690655 | 팩토리얼 계산문제..질문~ (9) | 옆집꼬마야 | 2025-04-06 |
2690627 | c 변수 선언후 변수값 저장안하고 출력 | 방방 | 2025-04-06 |
2690600 | 릴리즈 모드로 컴파일해서 다른 컴퓨터에서도 실행파일을 실행할수 있는 방법 알려주세요 (5) | 제나 | 2025-04-06 |
2690576 | bin파일 저장 | 다올 | 2025-04-06 |
2690547 | C언어 뒷부분이라 너무 어려워서요;; 프로그래밍 하나만 부탁드립니다 (4) | 그루터기 | 2025-04-05 |
2690517 | cygwin에서요.. (1) | 엘보어 | 2025-04-05 |