Каждый пункт меню ввести в отдельную функцию - C (СИ)
Формулировка задачи:
К исходнику реализовать меню из 5 пунктов:
1)Открыть указанный файл для обработки
2)Обработать введенные данные (обработка программой введенного текста)
3)Сохранить в файл результат пункта 2.
4)Вывести результат обработки пункта 1 на экран.
5)Выход из программы.
Каждый пункт меню ввести в отдельную функцию.
#include <stdio.h> #include <string.h> int main() { FILE *file1, *file2; char fname[256]; int ch; printf ("Enter the filename to be copied:\n"); fgets (fname, sizeof (fname), stdin); //со стандартного потока stdin (клавиатура) считывается имя файла который надо модифицировать if (fname[strlen(fname) - 1] ='\n') fname[strlen(fname) - 1] = 0; //тут мы приводим в порядок строку с именем файла чтобы в дальнейшем проверить ее file1 = fopen (fname,"r+"); //открываем исходный файл для чтения if (!file1){ printf ("Can't find this file %s\n",fname); return 0; //если нет такого файла программа завершается } file2 = fopen ("output.txt","w+"); //открываем (создаем если не существует) модифицированный файл output.txt для правки if (!file2){ printf ("Can't create new file! Write Error\n"); fclose (file1); return 0; //если создать невозможно то программа завершается } while ((ch = getc(file1))!=EOF) //начинаем цикл: пока считанный символ не является признаком конца файла продолжаем { switch (ch){ case ' ': putc ('\t', file2); break; //если считываемый символ пробел, записываем в файл табуляцию case '\t': putc (' ',file2); break; //если символ табуляции - записываем пробел default: putc (ch, file2); break; //если любой другой символ, оставляем все без изменения } } fclose(file1); fclose(file2); //окончание работы с двумя файлами }
Решение задачи: «Каждый пункт меню ввести в отдельную функцию»
textual
Листинг программы
void display() { FILE *fp; char th; if((fp=fopen("test.txt", "r"))==NULL) { printf("Can't open the file.\n"); exit(1); } while((th=getc(fp))!=EOF) { putc(th, stdout); } fclose(fp); return 0; }
Объяснение кода листинга программы
В данном коде выполняется следующие действия:
- Открывается файл
test.txt
для чтения с помощью функции fopen. - Получается указатель на файл fp.
- Если файл не открылся (присваиваемое значение NULL), то выводится сообщение об ошибке и программа завершается с помощью функции exit.
- В цикле while считывается каждый символ из файла с помощью функции getc и выводится на экран с помощью функции putc.
- Файл закрывается с помощью функции fclose.
- Программа возвращает 0, что означает успешное выполнение.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д