파일에서 특정한 단어를 찾아 단어를 변경하는 프로그램을 가지고 왔습니다.
물론 단번에 코드를 본다면 좋기야 하겠지만 장기적으로 봤을때
혼자풀어보기 -> 힌트 -> 코드보기 순으로 공부하시는게 실력 향상에 큰 도움이 됩니다!
힌트를 보고 천천히 생각을 거쳐서 문제를 풀어보시고
답안을 확인해보세요
더보기
첫번째 파일을 읽기모드로 열고
두번째 파일을 쓰기모드로 연다
첫번째 파일을 두번째 파일을 복사하고
두 번째 파일에서 Android를 만나면 "안드로이드"로 바꾸는 프로그램을 작성하면 됩니다
프로그램의 기본틀입니다.
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main(void) {
FILE *fp1, *fp2;
char file1[100], file2[100];
char buffer[100];
printf("파일 이름: ");
scanf("%s", file1);
printf("파일 이름: ");
scanf("%s", file2);
// 첫번째 파일을 읽기 모드로 연다.
if( (fp1 = fopen(file1, "r")) == NULL ) {
fprintf(stderr,"파일 %s을 열 수 없습니다.\n", file1);
exit(1);
}
// 두번째 파일을 쓰기 모드로 연다.
if( (fp2 = fopen(file2, "w")) == NULL ) {
fprintf(stderr,"파일 %s을 열 수 없습니다.\n", file2);
exit(1);
}
// 첫번째 파일을 두번째 파일로 복사한다.
// Android를 만나면 "안드로이드로 변경한다.
while( fgets(buffer, 100, fp1) != NULL ) {
}
fclose(fp1);
fclose(fp2);
return 0;
}
더보기
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main(void) {
FILE *fp1, *fp2;
char file1[100], file2[100];
char buffer[100];
printf("파일 이름: ");
scanf("%s", file1);
printf("파일 이름: ");
scanf("%s", file2);
// 첫번째 파일을 읽기 모드로 연다.
if( (fp1 = fopen(file1, "r")) == NULL ) {
fprintf(stderr,"파일 %s을 열 수 없습니다.\n", file1);
exit(1);
}
// 두번째 파일을 쓰기 모드로 연다.
if( (fp2 = fopen(file2, "w")) == NULL ) {
fprintf(stderr,"파일 %s을 열 수 없습니다.\n", file2);
exit(1);
}
// 첫번째 파일을 두번째 파일로 복사한다.
while( fgets(buffer, 100, fp1) != NULL ) {
char *pos = strtok(buffer, " ");
while(pos != NULL) {
if( strcmp("Android" , pos)==0 )
fprintf(fp2, "안드로이드 "); else
fprintf(fp2, "%s ", pos);
pos = strtok(NULL, " ");
}
}
fclose(fp1);
fclose(fp2);
return 0;
}
더 많은 C언어 글이 궁금하다면?
https://chuinggun.tistory.com/category/C%EC%96%B8%EC%96%B4
'C언어' 카테고리의 다른 글
[C언어] 길이가 100인 n개의 문자열을 저장하는데 필요한 동적메모리를 할당해보자. (0) | 2020.05.14 |
---|---|
[C언어] 동적 메모리 할당을 이용하여서 사용자로부터 양의 정수들의 합을 구하는 프로그램을 작성하라. (0) | 2020.05.14 |
[C언어] 파일에서 특정한 단어를 찾아서 파일 이름과 단어가 위치한 줄 번호를 출력하는 프로그램을 작성하시오 (0) | 2020.05.14 |
[C언어] 소규모의 데이터베이스 프로그램 작성, 자기가 소유하고 있는 도서를 관리하는 프로그램을 작성하시오. (0) | 2020.05.14 |
[C언어] 텍스트 파일을 읽어서 각 줄의 앞에 번호를 붙이는 프로그램을 작성하라. 줄 번호는 폭이 6이고 오른쪽 정렬되도록 하라. (0) | 2020.05.14 |
댓글