Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

Войти
Регистрация
Восстановить пароль
 
Hardcore
4 / 4 / 0
Регистрация: 24.10.2010
Сообщений: 200
#1

Замена в строке восклицательного знака на точку - C++

02.11.2010, 14:11. Просмотров 910. Ответов 8
Метки нет (Все метки)

Надо написать функцию которает поменяет влюбом тексте все "!" знаки на "."
надо использовать указатели.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.11.2010, 14:11
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Замена в строке восклицательного знака на точку (C++):

Определить наличие восклицательного знака в вводимой строке - C++
Вводится набор символов, если есть восклицательный знак, выводится true, если нет - false. #include "stdafx.h" #include <iostream> ...

Определить в строке количество пробелов до первого восклицательного знака - C++
Дана строка символов.определить количество пробелов до первого восклицательного знака.если восклицательного знака нет,то напечатать...

В введенной строке заменить каждую запятую и точку на точку с запятой - C++
В введенной строке заменить каждую запятую и точку на точку с запятой и вывести полученную строку.

Найти методом пошагового прохождения по аргументу точку, в которой происходит смена знака функции - C++
Упрощенная версия программы. Она должна найти методом пошагового прохождения с одного конца по другой конец отрезка точку, в которой...

Замена знака в значениях массива - C++
Только начал осваивать массивы и делать не большие задание, ну вот почему-то не могу значения от 0 до 100 поменять на отрицательные. int...

Необходимо чтобы функция new добавляла к строке 3 знака восклицания - C++
Всем привет! Необходимо чтобы функция new добавляла к строке 3 знака восклицания. Так как расширить старый массив мы не можем, нужно...

8
Lerny
56 / 56 / 3
Регистрация: 14.03.2010
Сообщений: 151
02.11.2010, 14:57 #2
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
Цитата Сообщение от Hardcore Посмотреть сообщение
Надо написать функцию которает поменяет влюбом тексте все "!" знаки на "."
надо использовать указатели.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <conio.h>
#include <iostream>
 
int main()
{
using namespace std;
        char *p=new char[300];
        cin.get(p,299);
 
int i=0;
while (p[i]!='\0')
{
        if (p[i]=='!')
         p[i]='.';
         i++;
}
        cout << p;
delete p;
p=NULL;
        getch();
        return 0;
}
3
easybudda
Модератор
Эксперт CЭксперт С++
9917 / 5840 / 976
Регистрация: 25.07.2009
Сообщений: 11,014
02.11.2010, 15:00 #3
C
1
2
3
4
5
6
...
char s[] = "bla!bla!bla!", * p;
for ( p = s; *p; ++p )
  if ( *p == '!' )
    *p = '.';
...
0
Hardcore
4 / 4 / 0
Регистрация: 24.10.2010
Сообщений: 200
02.11.2010, 16:51  [ТС] #4
#include <conio.h> а что делает эта библиотека?
0
Lerny
56 / 56 / 3
Регистрация: 14.03.2010
Сообщений: 151
02.11.2010, 16:54 #5
Цитата Сообщение от Hardcore Посмотреть сообщение
#include <conio.h> а что делает эта библиотека?
Вообще я её ввел только ради getch(), чтобы программа не закрывалась.
Можно удалить библиотеку и тогда добавить вместо getch():
C++
1
2
char kon;
cin >> kon;
0
Beleaf
9 / 9 / 3
Регистрация: 14.04.2010
Сообщений: 99
02.11.2010, 16:55 #6
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
#include <iostream>
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <conio.h>
 
using namespace std;
 
int main()
{
    int i=0, len=0;
    char *text = new char[300];
    char chngval, wntval;
    cout << "Input your text: ";
    cin.getline (text, 200);
    len = strlen(text);
    cout << "Input a character on which you want to change: ";
    cin >> wntval;
    cout << "Input a character you want to change: ";
    cin >> chngval;
    for (i=0; i<len; i++)
        if (text[i] == chngval) text[i] = wntval;
    for (i=0; i<len; i++)
        cout << text[i];
    cin.get();
    cin.get();
    return 0;
}
Мой вариант. Более наворочено: можете сами выбирать какой символ заменять и на какой.
1
Hardcore
4 / 4 / 0
Регистрация: 24.10.2010
Сообщений: 200
02.11.2010, 17:19  [ТС] #7
а можешь код написать полность без getch()?
0
Beleaf
9 / 9 / 3
Регистрация: 14.04.2010
Сообщений: 99
02.11.2010, 17:24 #8
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
пожалуйста:

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
#include <iostream>
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
 
using namespace std;
 
int main()
{
        int i=0, len=0;
        char *text = new char[300];
        char chngval, wntval;
        cout << "Input your text: ";
        gets (text);
        len = strlen(text);
        cout << "Input a character on which you want to change: ";
        cin >> wntval;
        cout << "Input a character you want to change: ";
        cin >> chngval;
        for (i=0; i<len; i++)
                if (text[i] == chngval) text[i] = wntval;
        for (i=0; i<len; i++)
                cout << text[i];
    cout << endl;
    system ("pause");
        return 0;
}
Если есть вопросы, с радостью отвечу
0
Lerny
56 / 56 / 3
Регистрация: 14.03.2010
Сообщений: 151
02.11.2010, 17:24 #9
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
Цитата Сообщение от Hardcore Посмотреть сообщение
а можешь код написать полность без getch()?
Я так полагаю, если getch(), то это мне. Я ж написал, что заменить)
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <iostream>
 
int main()
{
using namespace std;
        char *p=new char[300];
        cin.get(p,299);
 
int i=0;
while (p[i]!='\0')
{
        if (p[i]=='!')
         p[i]='.';
         i++;
}
        cout << p;
delete p;
p=NULL;
        char kon;
        cin >> kon;
        return 0;
}
1
02.11.2010, 17:24
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
02.11.2010, 17:24
Привет! Вот еще темы с ответами:

Как найти количество символов в строке до определённого знака? - C++
есть много разных строк. как в них найти количество символов до определенного знака? в моем случае до : понимаю, что нужен цикл ...

Найти в строке цифры, идущие после знака &, и вывести их - C++
Друзья выручайте, есть строка типа Ia_НН1=&amp;35А Ib_НН1=&amp;36А Ic_НН1=&amp;37А, как мне в ней найти цифры идущие после знака &amp; и вывести их (тоесть...

Найти в строке точку - C++
Всем привет ! Нужно найти в строке точку. Делаю #include &lt;iostream&gt; #include &lt;string&gt; ...

В строке заменить все запятые на точку - C++
В строке заменить все запятые на точку. Подсчитать количество замен.


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

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

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