Форум программистов, компьютерный форум CyberForum.ru

Задача на строки ( - C++

Восстановить пароль Регистрация
 
_Eldar_
 Аватар для _Eldar_
44 / 29 / 3
Регистрация: 31.10.2009
Сообщений: 200
05.01.2010, 10:55     Задача на строки ( #1
Привет всем) Не могу решить задачу: "Написать программу, которая считывает текст из файла и выводит его на экран, меняя местами каждые два соседних слова". Помогите с решением пожалуйста. заранее благодарен. Вот результат моих мучений (ничего хорошего не вышло )
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
#include <iostream.h>
#include <fstream.h>
#include <windows.h>
#include <string.h>
#include <math.h>
 
int main(){
 
   SetConsoleCP(1251);
   SetConsoleOutputCP(1251);
 
   fstream fin("d:\\c++\\work_doc\\input.txt");
   if(!fin){
      cout << "Файл не найден";
      return 1;
   }
   const int len = 261;
   char line[len];
   char *token;
   char delims[] = " ,.?!";
   int count = 0;
 
   cout << "\n";
   while(fin.getline(line,len)){
 
      token = strtok(line,delims);
      while(token != NULL){
         count += 1;
         char *word_f = new char[strlen(token)+1];
         char *word_s = new char[strlen(token)+1];
         if(fmod(count,2)!=0){
            strcpy(word_f,token);
            word_f[strlen(token)+1] = '\0';
         }
         else{
            strcpy(word_s,token);
            word_s[strlen(token)+1] = '\0';
            cout << "\n" << word_s << " - " << word_f;
         }
         token = strtok(NULL,delims);
      }
   }
 
   return 0;
 
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.01.2010, 10:55     Задача на строки (
Посмотрите здесь:

задача на строки C++
C++ задача на Строки
C++ задача на строки.с++
C++ Задача, строки, с++
задача на строки C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
TanT
эволюционирую потихоньку
 Аватар для TanT
464 / 462 / 43
Регистрация: 30.06.2009
Сообщений: 1,399
05.01.2010, 12:41     Задача на строки ( #2
с 18 по 44 строку вставь
C++
1
2
3
4
5
6
7
8
9
10
11
int counter=0;
    string word[2];
    while(!fin.eof()){
        fin>>word[counter%2];
        if(counter%2)
            cout<<word[1]<<" "<<word[0]<<" ";
        ++counter;
    }
  if(counter%2)
        cout<<word[0];
    fin.close();
_Eldar_
 Аватар для _Eldar_
44 / 29 / 3
Регистрация: 31.10.2009
Сообщений: 200
05.01.2010, 13:30  [ТС]     Задача на строки ( #3
Спасибо, сейчас буду разбирать))

Добавлено через 21 минуту
у меня дурацкий вопрос: что за тип такой string? и что за метод fin.eof ? Объясни пожалуйста
Alex_C#
 Аватар для Alex_C#
20 / 20 / 1
Регистрация: 25.12.2009
Сообщений: 86
05.01.2010, 13:33     Задача на строки ( #4
В MSDN загляни
_Eldar_
 Аватар для _Eldar_
44 / 29 / 3
Регистрация: 31.10.2009
Сообщений: 200
05.01.2010, 13:38  [ТС]     Задача на строки ( #5
Извиняюсь за еще один дурацкий вопрос: "Что есть MSDN?"
novi4ok
549 / 502 / 8
Регистрация: 23.07.2009
Сообщений: 2,359
Записей в блоге: 1
05.01.2010, 13:40     Задача на строки ( #6
msdn.microsoft.com
TanT
эволюционирую потихоньку
 Аватар для TanT
464 / 462 / 43
Регистрация: 30.06.2009
Сообщений: 1,399
05.01.2010, 14:00     Задача на строки ( #7
Цитата Сообщение от _Eldar_ Посмотреть сообщение
Спасибо, сейчас буду разбирать))

Добавлено через 21 минуту
у меня дурацкий вопрос: что за тип такой string? и что за метод fin.eof ? Объясни пожалуйста
string - это очень удобная библиотека для работы со строками
while(!fin.eof()) - можно расшифровать как "выполнять тело цикла пока фаил весь не прочитан"
_Eldar_
 Аватар для _Eldar_
44 / 29 / 3
Регистрация: 31.10.2009
Сообщений: 200
05.01.2010, 14:12  [ТС]     Задача на строки ( #8
все вроде разобрался))) Еще раз спасибо за помощь)
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.01.2010, 21:17     Задача на строки (
Еще ссылки по теме:

C++ Задача на строки !
Задача на строки C++
Задача на строки C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Андрейка
409 / 213 / 23
Регистрация: 25.03.2009
Сообщений: 716
05.01.2010, 21:17     Задача на строки ( #9
да std::string это всего лишь другое название для std::basic_string <char> поэтому чтобы кто нить не понял делаем так std::basic_string <char> _STRING ("xD");
Yandex
Объявления
05.01.2010, 21:17     Задача на строки (
Ответ Создать тему
Опции темы

Текущее время: 19:54. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru