Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
masalu
2 / 2 / 0
Регистрация: 14.03.2013
Сообщений: 39
#1

Написать функцию, принимающую указатель на строку и выполняющую удаление всех букв «а» из строки - C++

11.04.2014, 09:07. Просмотров 1297. Ответов 2
Метки нет (Все метки)

Написать функцию, принимающую указатель на строку и выполняющую удаление всех букв «а» из строки
http://www.cyberforum.ru/cpp-beginners/thread1949139.html
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.04.2014, 09:07
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Написать функцию, принимающую указатель на строку и выполняющую удаление всех букв «а» из строки (C++):

Написать функцию принимающую массив и возвращающую указатель на динамический массив
Написать функцию принимающую массив и возвращающую указатель на динамический...

Написать функцию-парсер, принимающую строку и удаляющую из нее все комментарии типа /* */
В общем, мне нужна помощь, я вообще бес понятия как это сделать: Мне нужно...

Написать собственную функцию вычисления длины строки,перевода всех введенных букв в заглавные
Написать собственную функцию вычисления длины строки,перевода всех введенных...

Передать напрямую текст в функцию, принимающую указатель на адрес
Всем привет) У меня есть ф-ция которая принимает адрес строки. Я хочу передать...

рекурсия.написать функцию,принимающую указ. на другую функцию, осуществл. некую операцию с переданным х
рекурсия.написать функцию,принимающую указ. на другую функцию, осуществл. некую...

2
Gygocopter
10 / 10 / 8
Регистрация: 05.02.2014
Сообщений: 124
11.04.2014, 22:43 #2
Лучший ответ Сообщение было отмечено masalu как решение

Решение

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
void f(char*);
int _tmain(int argc, _TCHAR* argv[])
{
    setlocale(LC_ALL, "Russian");
    char str[] = "KaaaaaaakDelaRab?";
    f(str);
    cout << str;
    _getch();
    return 0;
}
void f(char *s)
{
    for (;*s;s++)
        if (*s == 'a')
        {
            strcpy(s, (s+1));
            s-=1;
        }
}
Если мы нашли букву 'a', мы смещаем строку на 1 элемент влево, т.е. 'a' затирается(Если бы мы передавали не указатель, а просто строку, то это выглядело бы так strcpy(&str[i],&str[i+1]) )
s-=1; Делается для того, если например за буквой 'a' идет тоже буква 'a'. (Т.е. в 'a' копируем остальную часть строки, которая начинается с 'a', а нам нужно все 'a' убрать)
1
Стич
0 / 0 / 0
Регистрация: 10.11.2015
14.04.2014, 19:36 #3
В 13 строке : for (;*s;s++)
Выдает ошибку , необъявленный идентификатор.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.04.2014, 19:36
Привет! Вот еще темы с решениями:

Написать функцию, принимающую массив структур Student
#include &lt;iostream&gt; #include &lt;string&gt; using namespace std; struct...

Написать функцию, принимающую параметры, заданные явно и пропущенные
1. Написати функцію із параметрами за замовчуванням відповідно до варіанту,...

Написать функцию, принимающую в качестве параметра одномерный массив
Запишите и испытайте функцию. Входными параметрами составляемых функций...

Написать функцию, принимающую в качестве параметра массив целых чисел
Написать функцию, принимающую в качестве параметра массив целых чисел а) из 25...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru