2011-11-03 3 views
0

매우 간단한 질문을 드려 죄송합니다. 코딩에 익숙하지 않습니다.
입력 txt 파일C에서의 파일 처리

5,3
001
110
111
110
001
I는 같은 출력을 인쇄 할

U1 001
U2 110
U3 : 111
U4 : 110
U5 001

지금까지이 내용을 인쇄 할 수있었습니다 :

#include <stdio.h> 
    void main() { 
    FILE *fopen(), *fp; 
    int c; 

    fp = fopen("read.txt","r"); 
    c = getc(fp) ; 

    while (c!= EOF) { 
     putchar(c); 
     c = getc(fp); 
    } 

    fclose(fp); 
    } 

수 있습니다. 어떻게 진행해야합니까?

+0

나는 읽고 있지만 어떤 방향을 보여줄 수 있습니다. – Naresh

+0

팁 하나 : 들여 쓰기에 둘 이상의 공백을 사용하십시오. 코드를 읽는 것이 어렵습니다. – Pithikos

+1

@ ILLUMINATI7590, Kernighan and Ritchie 등이 있습니다. 당신은 당신이 여기에 자신의 노력을해야 할 것처럼 정말로 소리. –

답변

2

대부분의 작업은 while 루프 내에서 수행됩니다.
하지만 당신은 충분한 일을하지 않을 ...
가) 당신은 "U#"

제안을 인쇄해야) 라인
B를 계산해야합니다 사업을 계산하는 라인에 해당하는 변수를 생성하고 다시 작성하여 그것을 고려하기 위해 루프. 여기 몇 조각

int linecount = 0; 


printf("U%d: ", linecount) 


if (c == '\n') linecount += 1; 

오! 실제로 fopen 프로토 타입을 추가해서는 안됩니다. 이미 #include <stdio.h>으로 지정되었습니다.

그리고 cint으로 잘 나타내줍니다. 많은 사람들이 내가 fgets 한 번에 데이터 라인을 읽을 것이다 그것을 EOF와 호환되지 않는 char 문자

0

의 모든 범위를 선언의 오류를 않습니다. 완충 대에 완전한 줄이 있으면 fprintf을 "U % d : % s \ n"과 같은 형식으로 줄 머리글에 넣는 것이 매우 쉽습니다.