Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
miracle24
0 / 0 / 0
Регистрация: 01.04.2016
Сообщений: 76
1

В строке заменить каждый символ * числом, соответствующим номеру вхождения этого символа в строку

13.12.2016, 13:16. Просмотров 532. Ответов 3
Метки нет (Все метки)

в заданной строке заменить каждый символ "*" числом, соответствующим номеру по порядку вхождения этого символа в строку
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <stdio.h>
#include <string.h>
#include <cstdlib>
#include <iostream>
 
 
int main(void){
    setlocale(LC_ALL, "RUS");
    char first[] = "b*cdef*gh", second[] = "*", *p;      
    printf("исходная строка: %s\символ: %s\n", first, second);
    for ( p = first; *p; ++p )
        if ( strchr(second, *p) )
            printf("встречается %c\n", *p);
        int m = strlen(first);
   system("PAUSE");
    return EXIT_SUCCESS;
    
}
Добавлено через 1 минуту
в строке находит символ, а как именно заменить на номер не получается(
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.12.2016, 13:16
Ответы с готовыми решениями:

В строке заменить каждый символ «!» числом, равным индексу этого символа в строке
В заданной строке заменить каждый символ «!» числом, равным индексу этого...

Замена символа в строке на число соответствующему номеру по порядку вхождения этого символа в строку
В заданной строке заменить каждый символ «*» числом, соответствующим номеру по...

Заменить каждый символ массива встречающийся после первого вхождения символа * на символ -
Даны натуральное число n, символы s1,…,sn. Преобразовать последовательность...

Заменить введенный символ от 0 до 9 соответствующим числом
4)Написать программу с использованием оператора switch в соответствии с номером...

Заменить в строке символ 'q' на номер вхождения в строку в обратном порядке
Вводится производная строка, заменить в ней символ 'q' на номер вхождения в...

3
nmcf
6274 / 5577 / 2537
Регистрация: 14.04.2014
Сообщений: 23,468
13.12.2016, 15:18 2
Если номер позиции не превышает 9, то:
C++
1
2
3
    for ( p = first; p != NULL;)
        if ( p = strchr(p, second[0]) )
            *p = p - first;
0
miracle24
0 / 0 / 0
Регистрация: 01.04.2016
Сообщений: 76
13.12.2016, 16:18  [ТС] 3
а если превышает?
0
nmcf
6274 / 5577 / 2537
Регистрация: 14.04.2014
Сообщений: 23,468
13.12.2016, 17:41 4
Тогда нужно либо с конца идти, либо суммировать величину сдвига и вычитать её из найденной позиции.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
13.12.2016, 17:41

Заменить все символы "*" числом, совпадающим с порядковым номером вхождения данного символа в строку
В заданной строке мне нужно заменить все &quot;*&quot; числом, которое будет отвечать...

Дан символ C и строки S, S0. После каждого вхождения символа C в строку S вставить строку S0
Дан символ C и строки S, S0. После каждого вхождения символа C в строку S...

Заменить все вхождения первого символа в массив на второй символ
Задан символьный массив и два символа. Замените все вхождения первого символа в...


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

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

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