게시판 즐겨찾기
편집
드래그 앤 드롭으로
즐겨찾기 아이콘 위치 수정이 가능합니다.
c언어 파일입출력 질문좀......
게시물ID : programmer_3604짧은주소 복사하기
작성자 : 늑대지렁
추천 : 0
조회수 : 576회
댓글수 : 5개
등록시간 : 2014/05/29 14:37:34
도서관리프로그램을 짜는중인데요

파일에

1 1 1 
2 2 2 
1 3 3 
2 4 4 

이런식의 데이터를 넣고

char chk[10];
char name[20];
char add[20];
char line[50];
fp = fopen("data.txt","r");

char sel[10];
printf("\t\t회원 번호를 입력하세요 : ");
scanf("%s",sel);

while(!feof(fp)){
memset(&line[0],0,sizeof(0));
fgets(line,50,fp);
if(strstr(line,sel)!=NULL)
{
fscanf(fp,"%s %s %s",chk,name,add);
printf("\t\t----------------------------\n");
printf("\t\t회원을 찾았습니다.\n");
printf("\t\t----------------------------\n");
printf("\t\t회원 이름 : %s\n",name);
printf("\t\t회원 번호 : %s\n",chk);
printf("\t\t회원 주소 : %s\n",add);
printf("\t\t----------------------------\n");
fprintf(fp,"\n"); 
}
else
fprintf(fp,"\n");
}

이러한 코드를 실행했는데


제가 생각하기로는

fgets로 line배열에 그 줄에 해당하는 값들을 가져온다음에

strstr 로 sel을 가지고 있는 해당 라인의 주소값을 반환해서

원하는 값들을 출력할 수 있다고 생각하는데요

예를들어 2를 입력받았다고 하면

2 2 2 와

2 4 4 가 출력되야되는데

1 3 3 이 출력되네요

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