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

Дана строка символов, заменить в ней все многоточия на плюсы - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ ошибка сегментации http://www.cyberforum.ru/cpp-beginners/thread212596.html
Всем привет! Я никогда не программировал, а тут решил склепать небольшую программку. Да вот только не могу понять почему выскакивает ошибка(( Программка должна считывать значение из файла в...
C++ Массивы Саздать программу для сортировки массивов различными методами http://www.cyberforum.ru/cpp-beginners/thread212586.html
C++ Определить сумму элементов массива
" определить сумму всех элементов массива"
C++ Нахождение произвидения в матрице
Мучаюсь с прогой пол дня не как не магу доделать , помогите форумчане!! вот задание:Пользователь задает матрицу NxM , Определить номер столбца с найбольшим произведением. Вот то что у меня...
C++ Люди нужна ваша мудрость! http://www.cyberforum.ru/cpp-beginners/thread212558.html
Короче у нас идея вот в чём... у нас есть два char ных массива, в которых есть заведомо одинаковые слова! Наша задача найти эти слова и вывести их на экран + количество повторов! Спасайте!
C++ Пути в графе напечатать все пути в неориентированном графе.Знаю, что есть много задач на графы и пути, но такой не могу найти=( Граф задать в классе.Часть программы у меня уже есть, но она находит только один... подробнее

Показать сообщение отдельно
easybudda
Модератор
Эксперт CЭксперт С++
9625 / 5573 / 947
Регистрация: 25.07.2009
Сообщений: 10,708
16.12.2010, 23:25
Цитата Сообщение от lenaa Посмотреть сообщение
так проще
Мы простых путей не ищем!
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
29
30
31
32
33
34
35
36
37
38
39
#include <stdio.h>
#include <string.h>
 
/* меняет в строке str все вхождения ss на rs
    размер строки не проверяется - должен быть
    заведомо достаточным. Максимальный размер строки
    не должен превышать BUFSIZ (в винде обычно 2048) 
    строки не должны перекрываться в памяти */
 
char * str_replace(char * str, const char * ss, const char * rs){
    static char buf[BUFSIZ];
    char * start, * stop;
    int len;
    
    memset(buf, 0, BUFSIZ);
    len = strlen(ss);
    start = str;
    while ( stop = strstr(start, ss) ){
        strncat(buf, start, stop - start);
        strcat(buf, rs);
        start = stop + len;
    }
    if ( *start )
        strcat(buf, start);
    
    return strcpy(str, buf);
}
 
#define REPLACE_WHAT "..."
#define REPLACE_TO "+"
 
int main(void){
    char buf[BUFSIZ];
    
    while ( printf("String: ") && fgets(buf, BUFSIZ, stdin) && *buf != '\n' )
        printf("Result: %s\n", str_replace(buf, REPLACE_WHAT, REPLACE_TO));
    
    return 0;
}
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru