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

Дополнить каждое слово предложения пробелами (по длине максимального слова) - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ надо литература по компонентам Builder 6 http://www.cyberforum.ru/cpp-beginners/thread179913.html
подскажите где взять (скачать бесплатно) учебник/справочник шоб было описание работы с компонентами InternetExpress, Internet заранее спасибо. Запрещено давать ссылки на скачивание программ и книг с файлообменников (рапида, депозит и т.п.) и других сайтов (форумов), если есть возможность их скачать с сайтов фирм-производителей. Правила форума, пункт 3.10
C++ Как записать в переменную большое количество текста? Как записать в переменную большое количество текста ? Но этот текст с слешами, лапками, и прочими спец символами.. http://www.cyberforum.ru/cpp-beginners/thread179910.html
C++ Дополнительно на оценку!
Такая задача: надо вывести график вводимой функции типа , тоесть она вводится юзером и надо вывести график функции!
C++ Строки, десятичная система, шестнадцатеричная
В строке найти все числа в десятичной системе счисления, сформировать новую строку, в которой заменить их на соответствующим представлением в шестнадцатеричной системе. понял, то что их нужно как-то вводить по-размному. а так вообще не понятно
C++ Составить описание класса Прямоугольник http://www.cyberforum.ru/cpp-beginners/thread179855.html
Пожалуйста помогите сделать задание!!!!!!!!!!!!!!!!!!! Составить описание класса прямоугольников со сторонами, параллельными осям координат. Предусмотреть возможность перемещения прямоугольников на плоскости, изменение размеров, построение наименьшего прямоугольника, содержащего два заданных прямоугольника, и прямоугольника, являющегося общей частью (пересечением) двух прямоугольников....
C++ Игра "Жизнь" Первый серьёзный пррактический опыт в объектно-ориентированном программировании. Пока я ещё не написал функцию вывода на экран. Но я старался сделать движок игры, находящийся в файлах cell.cpp и world.cpp наиболее гибким, т.к буду писать графическую реализацию. Но сначала буду тестировать консольную. Прошу исправить ошибку в динамическом создании двухмерного массива. Ошибка находится в файле... подробнее

Показать сообщение отдельно
TheMachinist
 Аватар для TheMachinist
242 / 174 / 15
Регистрация: 14.06.2010
Сообщений: 422
27.10.2010, 15:19     Дополнить каждое слово предложения пробелами (по длине максимального слова)
нужно внести изменения в прогу , она должна соответствовать требованиям : "Использование
глобальных переменных запрещено. Все исходные данные функция должна по-
лучать в виде параметров. Каждая функция должна выполнять строго опреде-
ленное действие."
Вот что я могу предложить..... Создаем в main() массив cstr[256] для хранения результата. Создаем
функцию AddSpaces() которая и делает то ,что нам надо. И передаем ей в качестве параметров обе
строки-массивы (str и cstr) вызывая её из main()

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
43
44
#include <stdio.h>
#include <string.h>
#include <conio.h>
 
void AddSpaces(char str[256], char cstr[256]); // прототип
 
void main()
{
        char str[256]; // это строка 
        char cstr[256];
        AddSpaces(str,cstr);
puts(cstr);// выводим то что у нас получилось
_getch();
}
 
void AddSpaces(char str[256], char cstr[256])
{
        char spaces[20] = {"          "}; // массив пробелов
        gets(str); // ввод строки с клавиатуры
        strcpy(cstr,str); // создаем копию(копируем из str в cstr)
        char * pch; // указатель на символы
        int max_len = 0 ; // длина максимального слова
        int length; // длина отдельно взятого слова
        int dif; // разница в длине
pch = strtok(cstr," "); // указатель указывает на первое слово строки(то что до первого пробела)
while(pch != NULL)
{       
length = strlen(pch); // длина слова
if(max_len < length) max_len = length; // выводим максимальную длину слова
pch = strtok(NULL," "); // переходим к следующему слову
}
 
strcpy(cstr,""); // теперь cstr пустая строка
pch = strtok(str," "); // берем первое слово из str
 
while(pch != NULL)
{
length = strlen(pch); // измеряем его длину
dif = max_len - length; // сравниваем с максимальной
strcat(cstr,pch); // присоединяем его к cstr
strncat(cstr,spaces,dif); // присоединяем к cstr из spaces кол-во пробелов(dif)
pch = strtok(NULL," "); // и так далее до конца строки
}
}
 
Текущее время: 03:09. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru