Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 03.04.2014, 17:41   #1
camel5
Пользователь
 
Аватар для camel5
 
Регистрация: 10.11.2013
Сообщений: 28
По умолчанию Файлы(не получается написать малую часть кода)

Дан файл 1.txt, компоненты которого являются целыми числами.Файл 1.txt содержит столько же отрицательных чисел, сколько положительных. Используя вспомогательный файл 2.txt, переписать компоненты файла 1.txt в файл 3.txt так, чтобы в файле 3.txt числа шли в следующем порядке: два положительных, два отрицательных, два положительных, два отрицательных( предполагается, что число компонент в файле делится на 4).
Не получается шаг 3.
Шаги:
1)из файла 1 - отрицательные в файл 2, а "+" в файл 3
2) из файла 3.txt числа записываю в 1.txt.
3)из файла 1.txt по 2 положительных элемента в файл 3.txt и из файла 2.txt по 2 "-" элемента в файл 3.txt.То здесь должен быть цикл, реализующий поcледовательность: 2 "+" , 2 "-", 2 "+", 2 "-". Что у меня и не получается.
Код:
Код:
#include <stdio.h>
#include <stdlib.h>
#define SIZE 64
 
int main()
 
{   FILE *f1, *f2, *f3;
    int a,a1,a2,a3,a4,i;
 
//шаг 1: из файла 1 - отрицательные в файл 2
f1 = fopen("1.txt", "r");
f2 = fopen("2.txt", "w");
f3 = fopen("3.txt", "w");
 
    while (fscanf (f1, "%d", &a) == 1)
        if (a < 0)
    fprintf (f2, "%d", a);
    else
            fprintf (f3, "%d   ", a);
    fclose(f1);
    fclose(f2);
    fclose(f3);
   //шаг 2  из файла 3.txt  числа записываю в 1.txt 
 f1 = fopen("1.txt", "w");
 f3 = fopen("3.txt", "r");
 
 while (fscanf (f3, "%d", &a) == 1)
        fprintf (f1, "%d   ", a);
 
    fclose(f1);
    fclose(f3);
    
//шаг 3: из файла 1 положительные и попеременно
//из файла 2 отрицательные в файл 3
 
f1 =fopen("1.txt","r");
f2 = fopen("2.txt", "r");
f3 = fopen("3.txt", "w");
for(i=0; i<SIZE; i++){
   while (fscanf (f1, "%d%d", &a1, &a2) == 2)
   fprintf (f3, "%d  %d", a1, a2);
   while (fscanf (f2, "%d%d", &a3, &a4) == 2)
   fprintf (f3, "%d  %d", a3, a4);
}
fclose(f1);
fclose(f2);
fclose(f3);
return 0;
}
camel5 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите пожалуйста с программой на ассемблере. Не получается реализовать вторую часть ВасилийС Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 0 12.11.2013 23:23
Объясните часть кода (Delphi) Начинающий програм Помощь студентам 2 29.03.2012 20:49
будьте добры, прокомментируйте часть кода nps1 Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 2 22.06.2011 09:47
Прокомментировать часть кода Kasper1 Общие вопросы по Java, Java SE, Kotlin 4 08.01.2011 20:42