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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Siouxsie
1 / 1 / 0
Регистрация: 05.01.2010
Сообщений: 3
#1

Удаление слова с номером N. (С++) - C++

05.01.2010, 19:50. Просмотров 484. Ответов 5
Метки нет (Все метки)

Дана строка символов. Написать функцию для удаления слова с номером N. При написании программы необходимо использовать стандартные функции обработки строк.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.01.2010, 19:50     Удаление слова с номером N. (С++)
Посмотрите здесь:

C++ Выделить из строки s слов, начиная от слова с номером n
Дана квадратная матрица порядка m. Преобразовать матрицу по правилу: строку с номером сделать столбцом с номером n, а столбец с номером n - строкой с C++
Редактирование произвольного текста: удаление слова с заданным номером C++
определение длины слова с номером n в строке s C++
C++ Класс строки (удаление из строки слова с заданным номером и символа с заданным номером)
C++ определение позиции начала в строке s слова с номером n
C++ Определить в строке номера позиции слова с заданным номером
Написать программу удаления из строки слова с заданным номером. C++
C++ Написать функцию SubWord(s,n,L), которая выделяет из строки s L слов, начиная со слова с номером n
C++ Определение длинны слова с номером n. WordLength(s,n) (Завтра на экзамен)
C++ Выделить из строки s l слов, начиная со слова с номером n
Вычислить длину слова с номером n в заданной строке C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
accept
4819 / 3239 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
05.01.2010, 21:00     Удаление слова с номером N. (С++) #2
можно скопировать строку куда-нибудь, разрубить эту копию с помощью strtok, определив слово с номером N
в исходной строке найти это слово с помощью strstr (вернёт адрес первой буквы)
скопировать на его место (из исходной строки в исходную строку) с помощью memmove то, что находится за этим словом (адрес первой буквы слова плюс длина слова, вычисленная функцией strlen на любом этапе)
TanT
эволюционирую потихоньку
465 / 463 / 43
Регистрация: 30.06.2009
Сообщений: 1,399
05.01.2010, 22:03     Удаление слова с номером N. (С++) #3
что-то набросал, если между словами несколько пробелов, то будет "упс"
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
#include <iostream>
#include <string>
 
/*Дана строка символов. Написать функцию для удаления слова с номером N. При написании программы необходимо использовать стандартные функции обработки строк.*/
 
using namespace std;
 
int main()
{
    string str, buf="";
    int index=0, n, counter;
 
    cout << "Enter string: ";   getline(cin, str);  str+=" ";
    cout << "Enter number word: "; cin>>n;
 
    if(n<=0) { cout<<"error number is very small \n"; system("pause");  return 1; }
    
    counter=n;
    while ((index=str.find_first_of(" "))!=string::npos&&(--counter))
    {
        indexBeg=index;
        buf+=str.substr(0,index)+" ";
        str=str.substr(index+1);
    }
 
    if(counter) { cout<<"error number is very big \n"; system("pause"); return 1; }
  if((index=str.find_first_of(" "))!=string::npos)
        cout<<"str: "<<buf<<" "<<str.substr(index+1)<<endl;
    else
        cout<<"str: "<<buf<<endl;
 
    system("pause");
    return 0;
}
Siouxsie
1 / 1 / 0
Регистрация: 05.01.2010
Сообщений: 3
06.01.2010, 17:08  [ТС]     Удаление слова с номером N. (С++) #4
Спасибо)))
^Tecktonik_KiLLeR
1158 / 440 / 22
Регистрация: 23.06.2009
Сообщений: 6,227
Завершенные тесты: 1
06.01.2010, 17:13     Удаление слова с номером N. (С++) #5
C++
1
  indexBeg=index;
что такое О_О
TanT
эволюционирую потихоньку
465 / 463 / 43
Регистрация: 30.06.2009
Сообщений: 1,399
06.01.2010, 20:02     Удаление слова с номером N. (С++) #6
Цитата Сообщение от МедведЪ Посмотреть сообщение
C++
1
  indexBeg=index;
что такое О_О
это и значит что набросал и не причесал, убери и всё.
Yandex
Объявления
06.01.2010, 20:02     Удаление слова с номером N. (С++)
Ответ Создать тему
Опции темы

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