본문 바로가기
C언어

[C언어] 텍스트 파일을 읽어서 각 줄의 앞에 번호를 붙이는 프로그램을 작성하라. 줄 번호는 폭이 6이고 오른쪽 정렬되도록 하라.

by 이얏호이야호 2020. 5. 14.

텍스트 파일을 읽고 줄 번호를 입력하고 내용이 입력되는 프로그램을 가지고 왔습니다.

물론 단번에 코드를 본다면 좋기야 하겠지만 장기적으로 봤을때

혼자풀어보기 -> 힌트 -> 코드보기 순으로 공부하시는게 실력 향상에 큰 도움이 됩니다!

힌트를 보고 천천히 생각을 거쳐서 문제를 풀어보시고

답안을 확인해보세요

코드힌트

더보기

프로그램을 읽기모드로 실행하고

 

fgets를 이용하여 파일을 끝까지 회전

 

줄 앞에 line_number를 출력하고 뒤에 내용을 출력하면됩니다.

프로그램의 기본틀입니다.

#include <stdio.h>

#include <ctype.h>

int main(void) {

	FILE *fp = NULL;

	char buffer[500];

	int line_number=1;

	fp = fopen("sample.txt", "r");		//읽기모드로 실행

	if( fp == NULL ) {

		printf("파일 열기 실패\n");

		return 0;

	}

	while(			) {	//파일을끝까지 회전	

         printf(				);	// line_number 출력 buffer에 저장된내용 출력

		line_number++;

	}

	fclose(fp);

	return 0;

}

답안코드

더보기
#include <stdio.h>

#include <ctype.h>

int main(void) {

	FILE *fp = NULL;

	char buffer[500];

	int line_number=1;

	fp = fopen("sample.txt", "r");		//읽기모드로 실행

	if( fp == NULL ) {

		printf("파일 열기 실패\n");

		return 0;

	}

	while(fgets(buffer, 500, fp)!=NULL) {	//파일을끝까지 회전	

		printf("%d: %s\n", line_number, buffer);	// line_number 출력 buffer에 저장된내용 출력

		line_number++;

	}

	fclose(fp);

	return 0;

}

 

 

더 많은 C언어 글이 궁금하다면?

https://chuinggun.tistory.com/category/C%EC%96%B8%EC%96%B4

 

댓글