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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 11.03.2016, 16:52   #1
yana1996
Пользователь
 
Регистрация: 02.12.2015
Сообщений: 38
По умолчанию код из С++ в С

Помогите пожалуйста переделать код из С++ в С

Код:
#include <iostream>
#include <iostream>
#include <vector>
#include <string>
#include <fstream>
#include <Windows.h>
#include <algorithm>
using namespace std;
bool ssrt(string &a, string &b) { // для сорт. вектора слов
    return a.size() > b.size();
}
int main()
{
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
    fstream fin("fin.txt", fstream::app);
    string ch;
    while (getline(cin, ch)) { //вводим строку
        ch += '\n';
        fin << ch;              //отпр. ее в файл
    }
    ch.clear();
    fin.close();
    fin.open("fin.txt");        //сбрасываем позицию
    cin.clear();                //сбрасываем флаг EOF
    int x, sym, y = 0; cin >> x;//вводим какую строку читаем и сортируем
    if (x > 1) {
        while ((sym = fin.get()) != EOF)
            if (sym == '\n')    //ищем эту строку
                if (++y == x - 1)
                    break;
        getline(fin, ch);       //переписываем ее в string
    }
    else if (x > 0) getline(fin, ch);//если в первой строке
    if (x - 1 != y || !x)   return 0;
    vector<string> words(1);
    fin.close();
    for (int i = 0; i < ch.size(); ++i) {          //выбираем слова из нее
        if (isalpha(ch[i]) || isdigit(ch[i]))
            words.back() += ch[i];
        else if (!words.back().empty())
            swap(words.front(), words.back());
    }
    sort(words.begin(), words.end(), ssrt);//сортируем с функ ssrt
    fin.open("fin2.txt", fstream::app);
    for (int i = 0; i < words.size(); ++i)                //записываем в новый файл отсор. строку
        fin << words[i] << ' ';
    fin << '\n';
    fin.close();
    return 0;
}
yana1996 вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Надо перевести код с Паскаля в код Lazarus Ляйсан9517 Помощь студентам 7 06.04.2014 22:44
Программно изменить код страницы(как в Опере через исходный код) igrok111 Работа с сетью в Delphi 7 20.04.2013 23:46
Делфи. как правильно вставить код в код? Кушманский Помощь студентам 13 18.03.2012 20:06
Доп.код,обратный код,прямой код вычисления Lukas077 Помощь студентам 0 20.03.2011 12:07
Код написал код, но ответ постоянно один и тот же SkuLLL Помощь студентам 4 14.12.2010 19:25