학생의 성적 입출력 관련 코드
미쁘다
FILE I/O를 이용해서 학생의 성적을 출력해야하는데,
문제가 load, save, insert, delete, search, quit 을 수행하는 프로그램을 만드는건데요
insert 같은거는 학생 이름, 성적같은거 추가받아서 save로 저장해서 출력하는거구
delete랑 search는 말그대로구요, *delete(이름 입력하면 그이름에 해당하는 정보 삭제)
우선 제가 load save quit은 대충 짜봤습니다. 밑에코드가 제가 짠거구요, 질문은 밑에서 하겠습니다.
#include stdio.h.
#include string.h
#include stdlib.h
#define MAX 255
#define person 10
struct student{
int num, korean, english, math, science;
char name[MAX];
};
int load(struct student *p);
void save(struct student *p);
void ins();
void del();
int sear(struct student *p, int i);
int main()
{
struct student data[person], *p;
p = data;
int select, i;
printf(=================Address Management==================\n1. Insert 2. Delete 3. Search 4. Quit 5. Load 6. Save\n=====================================================\n);
printf(실행하고자 하는 프로그램의 숫자 입력 : \n);
while(1)
{
scanf(%d, &select);
switch(select){
case 3:
sear(p,i);
break;
case 4:
printf(종료\n);
return 0;
case 5:
load(p);
break;
case 6:
save(p);
break;
}
}
return 0;
}
int sear(struct student *p, int i)
{
printf(찾고자 하는 학생의 이름입력\n);
scanf(%d, &i);
return *p;
}
int load(struct student *p)
{
int i=0;
FILE *f = fopen(grade.txt, r);
while(1)
{
fscanf(f, %d, &(p+i)-num);
if((p+i)-num !=0)
{
fscanf(f, %s %d %d %d %d, &(p+i)-name, &(p+i)-korean, &(p+i)-english, &(p+i)-math, &(p+i)-science);
}
else
{
if(feof(f) != 0)
break;
}
i++;
}
printf(데이터 불러오기 완료\n);
fclose(f);
return 0;
}
void save(struct student *p)
{
int i;
FILE *f = fopen(grade2.txt, w);
fprintf(f, korean english math science\n);
for(i = 6; iperson; i++)
{
if((p+i)-num!=0)
fprintf(f, %s %d %d %d %d\n, (p+i)-name, (p+i)-korean, (p+i)-english, (p+i)-math, (p+i)-science);
else
fprintf(f, %d\n, (p+i)-num);
}
printf(저장 완료\n);
fclose(f);
}
아참 grade.txt 파일은 대충
num : 2
name korean english math science
LSH ~~
KFJ ~~ ( 과목성적)
이런식으로 되어 있습니다.
위처럼 소스를 짜보긴 했는데 다이해하고 짠건아니고 인터넷 보면서 맞는데로 한번 짜본거거든요, 저것도 돌려보니 약간의 불안함이 있습니다만..
어쨋든 이 이상 진도를 나가기가 너무 힘듭니다. 나머지 search, insert , delete같은 기능을 어떻게 추가해야 할지도 모르겠구요..
충분히 오랫동안 했는데도 겨우 이정도 진도를 나갔네요 ㅠㅠ 시간이좀 많이많았으면 제가 공부하면서 다시했을텐데 시간이 너무촉박합니다 내일까지라서요 ㅠㅠ 어떻게 해야할까요
조언좀 해주시거나 코드좀 수정해주셨으면 합니다..
번호 | 제 목 | 글쓴이 | 날짜 |
---|---|---|---|
2694012 | 전공 비전공자 개발자 (10) | 말글 | 2025-05-07 |
2693984 | 오버로딩이 무엇인가요? (2) | 헛매질 | 2025-05-07 |
2693956 | PlaySound재생이 안됩니다!(C에 음악넣기) | 지존 | 2025-05-06 |
2693928 | &와 *의 사용에 관한 명확한 이해 | 제나 | 2025-05-06 |
2693903 | 반복문 설명좀요 ㅠㅠ (2) | 란새 | 2025-05-06 |
2693869 | stdio.h 는 왜 쓰는건가요? (1) | 큰꽃들 | 2025-05-06 |
2693842 | 포인터 변수의 주소값끼리 더하는 것에 대해서 질문드립니다. (1) | 진솔 | 2025-05-05 |
2693811 | 소수 출력;;;; | 화이트캣 | 2025-05-05 |
2693788 | 이런 함수는 없나요? (3) | 앤드류 | 2025-05-05 |
2693758 | txt파일 불러와서 행렬로 저장 | 큰애 | 2025-05-05 |
2693727 | scanf 오류 문제!! (2) | 큰나래 | 2025-05-04 |
2693704 | 구조체 주소록 문제인데 도와주세요 (2) | 도1도캣 | 2025-05-04 |
2693676 | 열혈강의 c언어 질문입니다 | 하양이 | 2025-05-04 |
2693647 | 12.620000 을요 12.620 으로 어떻게 표현해요? (2) | 파도 | 2025-05-04 |
2693619 | 타이틀 코드.. | 단순드립 | 2025-05-03 |
2693591 | 컴파일 에러에서 질문드립니다 (3) | 게자리 | 2025-05-03 |
2693463 | 동적할당 이용시 fwrite사용을 어떻게 해야하나요..? (10) | 일본어못해요 | 2025-05-02 |
2693387 | 배열문제입니다 수정오류캡쳐했습니다 (6) | 연하얀 | 2025-05-01 |
2693356 | text 입출력 내림차순 질문입니다 ㅠ | 빛글 | 2025-05-01 |
2693328 | C언어를이용해서 .txt파일 외에 다른 확장자 파일 삭제가 가능한지.. (2) | 대나무 | 2025-05-01 |