프로그래밍/c언어

c언어 텍스트 파일의 내용을 거꾸로 표시하는 프로그램 소스

-현's- 2012. 2. 7. 15:34
반응형
프로그램 이름: rev.c


#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <malloc.h>

typedef struct _TXT{
int number;
char string[256];
} TXT;

int main()
{
FILE *fp;
int i, lines;
char s[256];
TXT *p;


//행의 수를 카운트하여 필요한 메모리 확보
if(!(fp=fopen("rev.c", "r")))
return 1;
for(line=0; !feof(fp); lines++)
fgets(s, 255, fp);
p=(TXT *)malloc(lines * sizeof(TXT));
if(!p)
return 2;

memset(p, 0, lines * sizeof(TXT));
fseek(fp, SEEK_SET, 0);
for(o=0; i<lines; i++){
p[i].number=i;
fgets(p[i].string, 255, fp);
p[i].string[strlen(p[i].string)-1] = '\0';
}
fclose(fp);

//거꾸로 표시
for(i=lines-1; i>-0; i--)
printf("%04d: %s\n", p[i].number+1, p[i].string);
free(p);
return 0;
}




반응형