Advertisement
anticlown

Поменять строки в файлах местами

Oct 24th, 2023 (edited)
665
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.55 KB | None | 0 0
  1. #define _CRT_SECURE_NO_WARNINGS
  2.  
  3. #include <stdio.h>
  4. #include <string.h>
  5. #include <locale.h>
  6.  
  7. int main()
  8. {
  9.     setlocale(LC_ALL, "Rus");
  10.     printf("\tЗадание 13: Данная программа получает два файла и меняет их содержимое местами.");
  11.  
  12.     FILE* file1;
  13.     char filepath1[100];
  14.     FILE* file2;
  15.     char filepath2[100];
  16.     char buffer1[256];
  17.     char buffer2[256];
  18.  
  19.     printf("\n\nВведите путь к первому файлу: ");
  20.     scanf("%s", filepath1);
  21.     printf("\nВведите путь ко второму файлу: ");
  22.     scanf("%s", filepath2);
  23.     file1 = fopen(filepath1, "r");
  24.     file2 = fopen(filepath2, "r");
  25.  
  26.     if (!file1 || !file2)
  27.     {
  28.         printf("Ошибка открытия одного из файлов!\n");
  29.     }
  30.     else
  31.     {
  32.         while ((fgets(buffer1, 256, file1)) != NULL)
  33.         {
  34.             printf("Строка, полученная из первого файла: %s\n", buffer1);
  35.         }
  36.         while ((fgets(buffer2, 256, file2)) != NULL)
  37.         {
  38.             printf("Строка, полученная из второго файла: %s\n", buffer2);
  39.         }
  40.         fclose(file1);
  41.         fclose(file2);
  42.  
  43.         file1 = fopen(filepath1, "w");
  44.         file2 = fopen(filepath2, "w");
  45.         fputs(buffer1, file2);
  46.         fputs(buffer2, file1);
  47.     }
  48.  
  49.     fclose(file1);
  50.     fclose(file2);
  51.  
  52.     printf("\nПередача данных произошла успешно. ");
  53.     return 0;
  54. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement