파일입출력 라인삭제 질문입니다
피어나
질문 제목 :
파일입출력 라인삭제소스좀 수정해주십시오
파일입출력 라인삭제
질문 내용 :
#include stdio.h
#include string.h
FILE *fp;
struct record{
char name[15+1];
char writer[15+1];
}rec;
void get_data();
void display_data();
void delete_data();
void main(void)
{
int s;
while(s!=4){
puts(1.저장\n2.표시\n3.삭제\n4.끝);
scanf(%d,&s);
if(s==1)
get_data();
else if(s==2)
display_data();
else if(s==3)
delete_data();
}
}
void get_data()
{
if((fp=fopen(book.txt,a+t))==NULL){
puts(error);
exit(1);
}
puts(제목 : );
scanf(%s,&rec.name);
puts(저자 : );
scanf(%s,&rec.writer);
fseek(fp,0,SEEK_END);
fread(&rec,1,sizeof(rec),fp);
if((fwrite(&rec,1,sizeof(rec),fp))!=sizeof(rec)){
puts(error);
exit(1);
}
fclose(fp);
}
void display_data()
{
if((fp=fopen(book.txt,rt))==NULL){
puts(error);
exit(1);
}
fread(&rec,1,sizeof(rec),fp);
while(!feof(fp)){
fprintf(stdout,%s저 자의 %s\n,rec.writer,rec.name);
fread(&rec,1,sizeof(rec),fp);
}
fclose(fp);
}
void delete_data() //이부분이삭제부분입니다
{
char delete_name[15+1];
if((fp=fopen(book.txt,rwt))==NULL){
puts(error);
exit(1);
}
fread(&rec,1,sizeof(rec),fp);
while(!feof(fp)){
fprintf(stdout,%s저 자의 %s\n,rec.writer,rec.name);
fread(&rec,1,sizeof(rec),fp);
}
fseek(fp,0,SEEK_SET);
puts(지울것);
scanf(%s,&delete_name);
fread(&rec,1,sizeof(rec),fp);
while(1){
fread(&rec,1,sizeof(rec),fp);
if((strcmp(delete_name,rec.name))==0){
fputs(rec.name,fp);
fputs(rec.writer,fp);
if((fwrite(&rec,0,0,fp))!=0){
puts(error);
exit(1);
}
}
else{
if((fwrite(&rec,1,sizeof(rec),fp))!=sizeof(rec)){
puts(error);
exit(1);
}
}
if(!feof(fp))
break;
}
fclose(fp);
}
-
윤비
계속 이 폰트를 사용하면 탈퇴가 됩니다.
-
혁민
계속 이 폰트를 사용하면 탈퇴가 됩니다.
-
무들
삭제가안됩니다!ㅠㅠ
삭제하고싶은 단어를 적어도
그라인이 그대로 남아있습니다! -
맥적다
뭘 수정해드려요?;;;
번호 | 제 목 | 글쓴이 | 날짜 |
---|---|---|---|
2692282 | 도스상에서 생성된 exe파일에 press~ 뜨게 하기 (4) | 회사원 | 2025-04-21 |
2692256 | scanf("%*c"); ㅠㅠ 고수님들 | 거북이 | 2025-04-21 |
2692230 | 하노이탑 질문입니다. (1) | 미쁘다 | 2025-04-21 |
2692210 | 정보 올림피아드 문제인데.. 풀이 과정이 궁금합니다.(재귀함수) (5) | 물티슈 | 2025-04-20 |
2692144 | C언어와 리눅스에 대한 질문입니다. | 싴흐한세여니 | 2025-04-20 |
2692114 | 컨텍스트 스위칭하는데 걸리는 시간 측정.. | YourWay | 2025-04-19 |
2692086 | 간접참조 연산자, 증감연산자 질문이용! (2) | 블랙캣 | 2025-04-19 |
2692056 | 주석좀 달아주세요. 몇개적엇는데 몇개만달아주세요. (2) | DevilsTears | 2025-04-19 |
2691978 | 진수 쉽게 이해하는법... (3) | 지지않는 | 2025-04-18 |
2691949 | getchar() 한 문자를 입력받는 함수 질문 | 채꽃 | 2025-04-18 |
2691919 | 배열 정렬 및 합치기 질문입니다. | 사과 | 2025-04-18 |
2691845 | c언어왕초보 질문이 있습니다........ | 루나 | 2025-04-17 |
2691815 | void add(int num); 함수... (4) | 살랑살랑 | 2025-04-17 |
2691756 | 명령 프롬프트 스크롤바가 없어요 | 두메꽃 | 2025-04-16 |
2691725 | 자료구조에 관련해서 질문이 있어 글을 올립니다. | 누리알찬 | 2025-04-16 |
2691697 | if 문에서 구조체 배열에 저장되있던 문자열 검사하는 법 ? (2) | 민트맛사탕 | 2025-04-16 |
2691678 | C언어 함수 질문이요~!!! | 연보라 | 2025-04-15 |
2691650 | 반복문 | 돋가이 | 2025-04-15 |
2691618 | 링크드리스트 개념 질문이예요 (3) | 맨마루 | 2025-04-15 |
2691592 | 동적할당 이용 배열선언 질문입니다.ㅠㅠ (3) | 허리달 | 2025-04-15 |