Новые сообщения · Правила  
  • Страница 1 из 1
  • 1
Модератор форума: Berestovskiy  
Программные средства для работы с файлами
Переписать все латинские буквы верхнего регистра из каждой строки в новый файл.

Есть в С++ необходимо переписать на язык Си

#include <cstdlib>
#include <iostream>
#include <fstream.h>

using namespace std;

int main(intargc, char *argv[])
{
system("chcp 1251 >nul"); //пишем по-русски
chartext[81], buf[81]; //файл и его содержимое
cout<< "Введите имя файла: ";
cin>>text;
fstreami; //входнойфайл
i.open(text); //открыть

if (!i){cout<< "Ошибкаоткрытияфайла" <<endl; return EXIT_FAILURE;}
else{
cout<< "Исходныйфайл:" <<endl;
while (!i.eof()){ //вывод
i>>buf; //наэкран
cout<<buf<<endl;};}
i.clear(); i.seekg(0, ios::beg);
cout<< "Введитеимяфайла: ";
cin>> text;
fstream o; //выходнойфайл
o.open(text, ios_base::in|ios_base::out|ios_base::trunc);
if (!o){cout<< "Ошибкаоткрытияфайла" <<endl; return EXIT_FAILURE;}
else{
while (!i.eof())
{
string b = ""; //строка
i>>buf;
for(inti=0;i<81;i++)
{ //кодыбукв A-Z
if((int)buf[i]>0x40 && (int)buf[i]<0x5B)
{ //формируем строку
b += buf[i];
}; //для записи в файл
};
o << b <<endl; //запись в файл
};
};
i.close();
o.clear(); o.seekg(0, ios::beg);
while (!o.eof()){
buf[0]=0; //вывод
o >>buf; //наэкран
if (buf[0]!=0) cout<<buf<<endl;};
o.close();
system("PAUSE");
return EXIT_SUCCESS;
}
1 | Автор: StudentUstal | 2012-12-13, 12:42   |  Репутация: [ + 0 ]
  • Страница 1 из 1
  • 1
Поиск: