Открыть файл, найти нужное слово и заменить его на другое - C (СИ)
Формулировка задачи:
надо открыть файл найти нужное слово и заменить его на другое.
пробывал делать получается что-то типа такого:
но вылает ошибку "9: call of nonfuction"
вопрос где должен лежать файл 2.txt? где сама программа лежит?
#include <conio.h> #include <stdio.h> #include <string.h> int main() { FILE *fm; char name[20]; fm=fopen("2.txt","a"); while ( !EOF(fm)) { fscanf (fm,"%s",&name); if (strcmp(name,"car")==0) fprintf (fm," HHH "); } fclose(fm); getch(); return 0; }
Решение задачи: «Открыть файл, найти нужное слово и заменить его на другое»
textual
Листинг программы
... while ( fscanf(fin, "%s", buf) ) fprintf(fout, "%s ", ( strcmp(buf, change_from) ) ? buf : change_to); ...
Объяснение кода листинга программы
- В цикле while происходит чтение файла с помощью функции fscanf и сохранение прочитанной строки в переменной buf.
- Если строка в переменной buf не пустая (т.е. была прочитана из файла), то она записывается в файл fout с добавлением пробела в конце с помощью функции fprintf.
- В скобках функции fprintf происходит сравнение строки buf с целевым словом для замены (change_from). Если строки не совпадают (т.е. это не целевое слово), то в качестве вывода используется сама строка buf. Если строки совпадают (т.е. это целевое слово), то в качестве вывода используется целевое слово для замены (change_to).
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д