файловый ввод вывод в c



Автор Sabre задал вопрос в разделе Другие языки и технологии

Написать программу на си ++ (файловый ввод вывод_ и получил лучший ответ

Ответ от Ўрий-17[гуру]
#include <iostream>
#include <fstream>
using namespace std;
void exe(char* n) { int j,k; for(k=0;n[k];k++); for(k--;k>=0;--k) if(n[k]=='') break; for(j=0;n[++k];n[j++]=n[k]); n[j]=0; }
int main(int mn,char* nm[])
{ char c,t;
int j,s,p,k,f,y;
if(exe(nm[0]),mn!=3) cerr << nm[0] << " in.txt out.txt
",exit(1);
ifstream in(nm[1]); if(!in) cerr<<"file ""<<nm[1]<<"" not open!
",exit(1);
ofstream ou(nm[2]); if(!ou) cerr<<"file ""<<nm[2]<<"" not create!
",exit(1);
for(in.seekg(0,ios::end),s=in.tellg(),p=t=j=0;j-s;j++,t=c) if(in.seekg(s-1-j,0),c=in.get(),c==32) if(t!=48&&t!=45) { p=s-1-j; break; }
for(in.seekg(0,ios::beg),in>>s,j=-1;++j-s;) if(f=in.tellg(),in>>y) if(k=(j==1)*y+(j!=1)*k,p==f) ou<<k<<' '; else ou<<y<<' ';
in.close();
ou.close();
return 0;
}

Ответ от Nelu Leg[гуру]
Скорее всего можно и лучше написать. У меня получился такой код.#include <iostream>#include <fstream>using namespace std;int main(){ifstream f1("output.txt");ofstream f2("input.txt");int N;int number,pos,second;int ar[1000];f1 >> N;//Считываем N.//В цикле считываем из одного файла и записываем в массив.for(int i(0); i < N; i++){f1 >> number;//считываем из файла f1if(number > 0) pos = i;//Записываем позицию последнего положительного элементаif(i == 1) second = number;//Запоминаем значения второго элемента массива.ar[i] = number;//записываем в массив ar}ar[pos] = second;//записываем в файл f2for(int i(0); i < N; i++)f2 << ar[i] << ' ';}

Ответ от 3 ответа[гуру]
Привет! Вот подборка тем с похожими вопросами и ответами на Ваш вопрос: Написать программу на си ++ (файловый ввод вывод_
Файловый ввод-вывод в языке Си на Википедии
Посмотрите статью на википедии про Файловый ввод-вывод в языке Си
 

Ответить на вопрос:

Имя*

E-mail:*

Текст ответа:*
Проверочный код(введите 22):*