Обмен между пятью файлами по кольцевой схеме - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Заданы файлы f1, f2, f3, f4, f5, компонентами которых являются действительные числа. Организовать обмен компонентов между файлами в соответствии со схемой: f1->f2, f2->f3, f3->f4, f4->f5, f5->f1. Разрешается использовать один промежуточный файл h. _________________________ Запись в файлы идет, но никак не могу сделать обмен, помогите исправить код.
#include <stdio.h>
main()
{
    float ch1[10], ch2[10], ch3[10], ch4[10], ch5[10];
    int n, i;
    printf("Vvedite n:\n");
    scanf("%i", &n);
    FILE *f1;
    f1=fopen("c:\\prog13\\f1.txt", "w");
    printf("Vvedite chisla\n");
    for(i=0;i<n;i++)
 {
        scanf("%f", &ch1[i]);
 }
    for(i=0;i<n;i++)
    fprintf(f1, "%8.3f", ch1[i]);
    fclose(f1);
    FILE *f2;
    f2=fopen("c:\\prog13\\f2.txt", "w");
    printf("\nVvedite chisla\n");
    for(i=0;i<n;i++)
 {
        scanf("%f", &ch2[i]);
 }
    for(i=0;i<n;i++)
    fprintf(f2, "%8.3f", ch2[i]);
    fclose(f2);
    FILE *f3;
    f3=fopen("c:\\prog13\\f3.txt", "w");
    printf("\nVvedite chisla\n");
    for(i=0;i<n;i++)
 {
        scanf("%f", &ch3[i]);
 }
    for(i=0;i<n;i++)
    fprintf(f3, "%8.3f", ch3[i]);
    fclose(f3);
    FILE *f4;
    f4=fopen("c:\\prog13\\f4.txt", "w");
    printf("\nVvedite chisla\n");
    for(i=0;i<n;i++)
 {
        scanf("%f", &ch4[i]);
 }
    for(i=0;i<n;i++)
    fprintf(f4, "%8.3f", ch4[i]);
    fclose(f4);
    FILE *f5;
    f5=fopen("c:\\prog13\\f5.txt", "w");
    printf("\nVvedite chisla\n");
    for(i=0;i<n;i++)
 {
        scanf("%f", &ch5[i]);
 } 
    for(i=0;i<n;i++)
    fprintf(f5, "%8.3f", ch5[i]);
    fclose(f5);
    FILE *h;
    h=fopen("c:\\prog13\\h.txt", "w");
    f1=fopen("c:\\prog13\\h.txt", "r");
    for(i=0;i<n;i++)
 {
        while (fread(&ch1[i], sizeof(float), 1, f1)!=0)
  {
            fwrite(&ch1[i], sizeof(float), 1, h);
  }
 }
fclose(f1);
fclose(h);
}
Актуально, объясните хотя бы сам принцип обмена данными в файлах в Си)

Решение задачи: «Обмен между пятью файлами по кольцевой схеме»

textual
Листинг программы
#define file1 "f1.txt"
#define file2 "f2.txt"
#define file3 "f3.txt"
#define file4 "f4.txt"
#define N 4

Объяснение кода листинга программы

  1. #define - это директива препроцессора, которая используется для определения констант.
  2. file1, file2, file3, file4 - это константы, которые представляют имена файлов.
  3. N - это константа, которая представляет количество файлов в кольцевой схеме.
  4. В коде отсутствует основной блок, поэтому нельзя указать, что происходит в блоке.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

11   голосов , оценка 3.636 из 5
Похожие ответы