초본데 답변 부탁드려요
다와
파일을 돌아가면서 두줄씩 출력하는 프로그램인데 오류가 나네요..
#includestdio.h
#includestdlib.h
#define MAX_BUF 255
FILE *opfl(char *);
void clfl(FILE *);
void fdfl(FILE *, int, int);
int main(int argc, char *argv[]){
FILE *fp[3];
char buf[MAX_BUF];
int i,j,k,l,lcnt;
sscanf(argv[1], %d, &i);
if((i + 2) != argc){
fprintf(stderr, Command wrong\n);
exit(1);
}
for(j=0; ji; j++){
fp[j] = opfl(argv[j+2]);
}
printf(\n);
lcnt = 1;
while(1){
l = 0;
for(j=0; ji; j++){
for(k=0; k1; k++){
fdfl(fp[j], lcnt, j+1);
l += 1;
}
if(l == i) lcnt += 2;
}
k=0;
for(j=0; ji; j++){
if(feof(fp[j])) k++;
}
if(k == i) break;
}
printf(\n);
for(j=0; ji; j++){
clfl(fp[j]);
}
}
FILE *opfl(char *fname){
FILE *opfp;
if(!(opfp = fopen(fname, r))){
fprintf(stderr,Cannot open file\n);
exit(1);
}
return opfp;
}
void clfl(FILE *fp){
fclose(fp);
}
void rdfl(FILE *fp, int strdl, int flnum){
char buf[MAX_BUF];
int i;
for(i=0; i2; i++){
if(!fgets(buf, MAX_BUF, fp)) break;
printf(%d %dst line of file_%d %s, flnum, strdl, flnum, buf);
strdl++;
}
}
실행이 안되네요.. 오류 수정 부탁드립니다