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

Преобразовать строку так, чтобы между словами был ровно один пробел - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Вывести строку, содержащую те же символы, но расположенные в обратном порядке. http://www.cyberforum.ru/cpp-beginners/thread358875.html
Ввод и вывод строк осуществлять, используя функции gets и puts. При реализации программы использование функций для работы со строками из библиотек stdlib.h и string.h запрещено. Дана строка. Вывести строку, содержащую те же символы, но расположенные в обратном порядке.
C++ Вывести на экран все сообщения, отправленные в дату, указанную пользователем Необходимо разработать программу, в которой выполняется ввод списка записей определенного типа, а затем - обработка списка. Сначала в программе должен вводиться размер списка (целое число), а сам список создается в виде динамического массива структур. Ввод одной записи осуществляется в одной строке. Описание структур приводится после вариантов задания. Задание: Вывести на экран все сообщения... http://www.cyberforum.ru/cpp-beginners/thread358871.html
код double в действительные числа и наоброт C++
ребят помогите идеями, как можно осуществить перевод действительного числа в код double и наоборот. Если делать по стандартному алгоритму, тоесть: 1)перевести число в двоичную 2)найти мантиссу 3)найти смещенный порядок и перевести в двоичную 4)ну и вывести учитывая знак Проблема возникает в потери информации, можно еще по символьно, но никогда не любил функции strcmp и т.д. Так что жду...
C++ Обнаружение повторяющихся цифр в массиве
В общем нужно найти всё, что повторяется и какое количество раз. Голова с алгоритмом чот ваще не думает... Сделал по самому деревенскому... #include <iostream> using namespace std; const int size=11; int kart( int * );
C++ Исправить ошибку в коде http://www.cyberforum.ru/cpp-beginners/thread358832.html
Задача простейшая, но вот реализовать не получается правильно, вот условие : Написать программу вычисления стоимости покупки с учетом скидки. Скидка в 3% предоставляется, если сумма покупки больше 500 руб, в 5% — если сумма больше 1000 руб. Ниже приведен рекомендуемый вид экрана во время выполнения программы (данные, введенные пользователем, выделены полужирным шрифтом). Вычисление...
C++ Массивы Дан массив из, произвольно набранных, целых чисел. Требуется найти уникальные, т.е. не повторяющиеся числа и вывести их на экран, числа которые повторяются, просто записать в конец отсортированного массива. Так же надо найти индекс элемента, где заканчиваются уникальные элементы. Допустим дан массив: 2 5 4 3 2 2 6 3 5 1 Исходные данные будут: 2 5 4 3 6 1 3 2 2 5 6 - индекс подробнее

Показать сообщение отдельно
-=ЮрА=-
Заблокирован
Автор FAQ
01.10.2011, 16:52     Преобразовать строку так, чтобы между словами был ровно один пробел
alex.-93, смотри реализацию своего алгоритма вточности по заданию!
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
40
41
42
#include <stdio.h> //i/o
#include <string.h>//strchr strlen
#include <conio.h> //getch
 
int main()
{
    long sLen,bLen,i;
    char str[1025];//Думаю предложение(я) поменьше будут 1024 символов
    char *buf;//Для частей строки и прочих нужд
    do
    {
        printf("Enter sentence(s) less than 1024 chars:\r\n");
        scanf("%[^\n]",str,&buf);//В str текст до '\n' в buf '\n'
        
        printf("Removing numerous spaces\r\n");
 
        buf = strchr(str,' ');
        while(buf)
        {
            sLen = strlen(str);//В sLen длину строки
            bLen = strlen(buf);
            i = 1;
            while(buf + i)
            {
                //Последовательно проверяем каждй символ после пробела
                if((buf + i)[0] == ' ')
                    i++;
                else
                    break;
            }
            //Копирование внутри строки
            strcpy(&str[sLen - bLen + 1],&str[sLen - bLen + i]);
            str[sLen - i + 1] = '\0';//Подрезаем исхоную строку на величину убранных пробелов
            buf = strchr(buf + 1,' ');//Продолжаем следующих пробелов между словами
        }
        printf("\r\n\tInput string after removing spaces\r\n%s",str);
        printf("\r\nPress \'y\' for new input\r\n");
    }
    while(getch() == 'y');
 
    return 0;
}
Миниатюры
Преобразовать строку так, чтобы между словами был ровно один пробел  
 
Текущее время: 15:04. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru