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

Поиск и вствка слова в массиве - C++

Восстановить пароль Регистрация
 
Napster241
 Аватар для Napster241
0 / 0 / 0
Регистрация: 14.01.2014
Сообщений: 15
14.06.2014, 16:28     Поиск и вствка слова в массиве #1
Дано задание: Найти s1 в строке. Вставить s2 после найденного. Между ними вставить номер внесённого изменения.

Не понимаю, как организовать поиск по массиву, и одновременно с этим вставлять номер операции вставки. При использовании strcmp выводится ошибка. Код:
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.h>
#include <conio.h>
using namespace std;
 
int main()
{
    setlocale(0, "");
    int N;
    cout << "Количество слов в массиве: ";
    cin >> N;
    if (N == 0 || !N > 0 || N < 3)
    {
        cout << "Ошибка";
        getch ();
        return 0;
    }
    string s1, s2, str[N];
    cout << endl << "Заполните массив: " << endl;
    for (int k = 0; k < N; k++)
    {
        cout << "[" << k+1 <<"] ";
        cin >> str[k];
    }
    cout << endl << "Введите s1: ";
    cin >> s1;
    cout << "Введите s2: ";
    cin >> s2;
    cout << endl << "Вывод:";
    for (int i = 0; i < N; i++)
        cout << " " << str[i];
    strcmp (s1, str);
    getch ();
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.06.2014, 16:28     Поиск и вствка слова в массиве
Посмотрите здесь:

C++ Поиск слова в массиве символов char
C++ Поиск слова
C++ поиск слова в массиве
как осуществить в строковом массиве поиск именно слова(!), а не..... C++
Поиск слова в массиве C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
_script_
169 / 137 / 34
Регистрация: 01.05.2012
Сообщений: 414
14.06.2014, 16:41     Поиск и вствка слова в массиве #2
Napster241, strcmp это для сравнения строк. Просто вызов её без условия не имеет смысла.
Napster241
 Аватар для Napster241
0 / 0 / 0
Регистрация: 14.01.2014
Сообщений: 15
14.06.2014, 19:21  [ТС]     Поиск и вствка слова в массиве #3
Тогда как выполнить поиск? Я думал, что этим оператором можно.
_script_
169 / 137 / 34
Регистрация: 01.05.2012
Сообщений: 414
14.06.2014, 19:23     Поиск и вствка слова в массиве #4
Цитата Сообщение от Napster241 Посмотреть сообщение
Я думал, что этим оператором можно.
С помощью этой функции можно, сравнивать каждую строку с нужной.
Если функция вернула 0 строки равны.
Napster241
 Аватар для Napster241
0 / 0 / 0
Регистрация: 14.01.2014
Сообщений: 15
14.06.2014, 19:52  [ТС]     Поиск и вствка слова в массиве #5
Выдаёт ошибку: "cannot convert 'std::string {aka std::basic_string<char>}' to 'const char*' for argument '1' to 'int strcmp(const char*, const char*)"

Что это значит?
С char будет нормально работать значит? Но char не годится для массива из слов ведь.
_script_
169 / 137 / 34
Регистрация: 01.05.2012
Сообщений: 414
14.06.2014, 19:57     Поиск и вствка слова в массиве #6
Цитата Сообщение от Napster241 Посмотреть сообщение
Что это значит?
strcmp для сравнения сишных строк (char*). string можно сравнивать оператором ==.

Добавлено через 1 минуту
Ну или метод compare
Yandex
Объявления
14.06.2014, 19:57     Поиск и вствка слова в массиве
Ответ Создать тему
Опции темы

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