|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
04.12.2009, 19:53 | #1 |
Пользователь
Регистрация: 31.05.2009
Сообщений: 16
|
Работа со строками (Си)
Здравствуйте! Во время решения данной задачи возникли вопросы.
Поиск первого вхождения подстроки S1 в строку S. Шаблон функции Pos(S,S1). Оформление в двух вариантах : с помощью массивов и указателей. Допустим обьявили переменные типа чар S, S1. При интерактивном вводе присвоили им с помощью функции gets(){} символы. Но дальше возникает вопрос , как можно сравнить эти строку и подстроку?И вообще как можно написать функцию Pos(S,S1)? Спасибо |
04.12.2009, 20:20 | #2 |
Меркантильный кю
Участник клуба
Регистрация: 02.02.2008
Сообщений: 1,001
|
Самый тупой алгоритм:
i - номер текущего символа в S, j - номер текущего символа в S1 1. i = 0; j = 0; 2. Сравнили i и j символы S и S1 соответственно 3. Если не совпадают, то j = 0; переход к 4. Если совпадают, то переход к 5 4. Если i - последний символ S, то нужной подстроки нет. Иначе i++ 5. Если j - последний символ S1, то мы нашли нужную подстрочку. Иначе i++; j++ Если хотите, можете алгоритм Кнута-Морриса-Пратта посмотреть, он оптимальнее
Росли вроде умными, выросли дурнями... (c)А.Васильев
|
04.12.2009, 20:27 | #3 | |
Пользователь
Регистрация: 31.05.2009
Сообщений: 16
|
Цитата:
|
|
04.12.2009, 20:31 | #4 |
Меркантильный кю
Участник клуба
Регистрация: 02.02.2008
Сообщений: 1,001
|
ну вы же строки храните где-то, в каком-нибудь там char *S и char *S1
Росли вроде умными, выросли дурнями... (c)А.Васильев
|
04.12.2009, 20:43 | #5 |
Пользователь
Регистрация: 31.05.2009
Сообщений: 16
|
Допустим строки хранятся в переменных , а как сравнивать каждый элемент этих переменных?
|
04.12.2009, 21:46 | #6 |
Меркантильный кю
Участник клуба
Регистрация: 02.02.2008
Сообщений: 1,001
|
Код:
Код:
Росли вроде умными, выросли дурнями... (c)А.Васильев
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
работа со строками | Андрей.12 | Помощь студентам | 7 | 29.11.2009 19:24 |
Работа со строками | JeyKip | Общие вопросы C/C++ | 2 | 10.10.2009 18:41 |
работа со строками | lg12 | Помощь студентам | 8 | 17.08.2009 10:07 |
Работа со строками в С++ | Алекс...))) | Помощь студентам | 1 | 04.02.2009 19:48 |