본문 바로가기
C언어

[C언어] 사용자로부터 받은 파일 이름으로 텍스트 파일을 연 후에 파일 안에 들어 있는 인쇄 가능한 문자들의 개수를 계산하여 출력하라

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

텍스트 파일을 열고 인쇄가능한 문자들의 개수를 출력하는 프로그램을 가지고 왔습니다.

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

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

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

답안을 확인해보세요

 

더보기

파일의 이름을 입력받고

 

파일을 읽기 모드로 연다

 

파일을 끝까지 돌려서

 

프린트가 가능한 문자라면 count를 증가

#include <stdio.h>

#include <ctype.h>

int main(void) {

 FILE *fp = NULL;

 int c, count=0;

 char file1[100];

 printf("파일 이름을 입력하시오: ");

 scanf("%s", file1);

 // 첫번째 파일을 읽기 모드로 연다.

 if( (fp = fopen(file1, "r")) == NULL ) {

 	fprintf(stderr,"원본 파일 %s을 열 수 없습니다.\n", file1);

 exit(1);

 }

 while((		 ) {		//파일을 끝까지 돌려서 

 if( 		 )				//프린트가 가능한 문자라면 count를 증가

 count++;

 }

 fclose(fp);

 printf("문자의 개수는 %d\n", count);		//출력

 return 0;

}

 

 

 

더보기
#include <stdio.h>

#include <ctype.h>

int main(void) {

 FILE *fp = NULL;

 int c, count=0;

 char file1[100];

 printf("파일 이름을 입력하시오: ");

 scanf("%s", file1);

 // 첫번째 파일을 읽기 모드로 연다.

 if( (fp = fopen(file1, "r")) == NULL ) {

 fprintf(stderr,"원본 파일 %s을 열 수 없습니다.\n", file1);

 exit(1);

 }

 while((c = fgetc(fp)) != EOF ) {		//파일을 끝까지 돌려서 

 if( isprint(c) )				//프린트가 가능한 문자라면 count를 증가

 count++;

 }

 fclose(fp);

 printf("문자의 개수는 %d\n", count);		//출력

 return 0;

}

 

 

 

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

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

 

댓글