![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Новичок
Джуниор
Регистрация: 20.05.2010
Сообщений: 2
|
![]()
Здравствуйте!Раньше имел дело с массивами,теперь идет работа со строками.Проблем с логикой у меня нет,просто требуется ваша в помощь в осознании,а не в том,что вы сделали мне задание.Заранее благодарю что уделили мне время.Собственно,задание вот такое:
Функция TCHAR* ubratBeg (TCHAR* str, int nLen) получает строку. str, и удаляет из нее nLen первых символов. Функция возвращает адрес str. Функция TCHAR * poiskBukvCheredov(TCHAR * str, int& lenAlfa) получает строку str и ищет первую буквенную подстроку, в которой чередуются две буквы. Функция возвращает адрес найденной подстроки и ее длину или NULL, если в строке нет буквенной подстроки с чередованием символов. Функция char* ubratAllCheredov (TCHAR* str) получает строку str, находит все буквенные подстроки с чередованием и удаляет из них чередующиеся буквы. Если строку не удалось преобразовать, функция возвращает 0, иначе возвращает адрес строки. Используйте при разработке алгоритма функции poiskBukvCheredov и ubratBeg. В функции обработки фразы, используя функцию ubratAllCheredov, обработать каждое слово строки-фразы, поместив в новую строку-фразу только те слова, в которых удалось удалить чередование букв. Функция формирует информацию о количестве слов в конечной фразе. Результирующая информация в функции должна быть объединена в структуру. Мои наработки: #include <conio.h> #include <iostream> #include <string.h> #define TCHAR char #define TEXT(par)par using namespace std; void main(void) //функция мейн,ввод строки,тут все понятно { setlocale(LC_ALL,"rus"); TCHAR str[81]; cout<<endl<<"Введите основную строку\n"; cin.get(str,sizeof(str)); int n = ubratAllCheredov(str); _getch(); } int ubratAllCheredov (TCHAR* str) { int nLen; cout<<"Введите количество первых символов,которые требуется удалить"<<endl; cin>>nLen; //Тут я встал,ибо не понимаю,что хотят от меня дальше } TCHAR* ubratBeg (TCHAR* str, int nLen)// функция,которая удаляет первые символы { TCHAR* p=str+nLen; for(;*p;str++,p++) *str=*p; *str=*p; } Дальше процесс не продвинулся..дайте мне путеводную звезду,прошу |
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Работа со строками С++ | edmynt | Помощь студентам | 4 | 06.12.2009 16:40 |
работа со строками | Андрей.12 | Помощь студентам | 7 | 29.11.2009 19:24 |
Работа со строками. | Galacticus | Общие вопросы C/C++ | 0 | 11.03.2009 16:49 |
Работа со строками. | ViNcHeStEr | Помощь студентам | 6 | 29.06.2008 08:14 |
Работа со строками | Nividimka | Помощь студентам | 11 | 03.03.2007 15:58 |