Написать программу, которая считывает текст из файла и выводит его на экран, меняя каждые два соседних слова. - C (СИ)
Формулировка задачи:
Помогите дописать программу на Си.Написать программу, которая считывает текст из файла и выводит его на экран, меняя каждые два соседних слова.
#include "stdafx.h" #include "stdio.h" #include <string.h> #include <locale.h> FILE *f; int main() { setlocale(LC_ALL, "Ukrainian"); int i=0,s=0; char str[256]; f=fopen("in.txt", "wt"); printf("введiть текст:\n"); gets(str); fputs(str,f); fclose(f); FILE *f1; f1=fopen("in.txt","rt"); if(f==NULL) { printf("Fail not open"); } fgets(str,256,f); while(!feof(f)) { ????вот тут незнаю как????? } fclose(f1); getchar(); return 0; }
Решение задачи: «Написать программу, которая считывает текст из файла и выводит его на экран, меняя каждые два соседних слова.»
textual
Листинг программы
#include <stdio.h> #define WRD_LEN 256 #define WRD_MASK "%255s" #define FILE_NAME "file.txt" int main(void) { char w1[WRD_LEN], w2[WRD_LEN]; FILE * f; if ( ! ( f = fopen(FILE_NAME, "r") ) ) { fprintf(stderr, "Can't open %s for input!\n", FILE_NAME); return 1; } while ( fscanf(f, WRD_MASK, w1) == 1 ) { if ( fscanf(f, WRD_MASK, w2) == 1 ) printf("%s ", w2); printf("%s ", w1); } return ( ferror(f) || fclose(f) ); }
Объяснение кода листинга программы
- Подключение необходимых библиотек для работы с файлами и вывода информации на экран.
- Определение макросов: — WRD_LEN — максимальная длина одного слова в файле (256 символов). — WRD_MASK — шаблон для чтения слов из файла (до 255 символов). — FILE_NAME — имя файла, из которого необходимо считать данные (file.txt).
- Создание двух буферов (w1 и w2) для хранения считанных слов.
- Открытие файла с помощью функции fopen.
- Проверка на успешное открытие файла и вывод сообщения об ошибке в случае неудачи.
- Вход в цикл while, который будет выполняться до тех пор, пока успешно считывается первое слово.
- Внутри цикла while: — Считывание первого слова в буфер w1 с помощью функции fscanf. — Если считывание первого слова прошло успешно, то считывание второго слова в буфер w2. — Вывод на экран второго слова, добавив перед ним пробел. — Вывод на экран первого слова, добавив перед ним пробел.
- В конце программы возвращается ошибка, если при работе с файлом была допущена ошибка (например, файл был открыт некорректно).
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д