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

Вывести слова и длину каждого из этих слов - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Задача на циклы. Начав тренировки, спортсмен в первый день пробежал 10 км. http://www.cyberforum.ru/cpp-beginners/thread537180.html
Начав тренировки, спортсмен в первый день пробежал 10 км. Каждый день он увеличивал дневную норму на 10% нормы предыдущего дня. Какой суммарный путь пробежит спортсмен за 7 дней? Помогите решить пожалуйста!!решить помощью оператора For
C++ Протабулировать функцию двух переменных Протабулировать функцию y=f(u, v) на интервалах u есть и v является с шагами hu, hv. Результаты вывести в виде таблицы. y=cos(u*v)+sin(u*v), u является , v является , hu=1.5, hv=0.75 Найти сумму положительных и произведение отрицательных значений функции http://www.cyberforum.ru/cpp-beginners/thread537171.html
Проверить то, что все фразы в тексте начинаются с прописной буквы; при необходимости откорректировать текст. C++
Задача на Си. Текст не содержит собственных имен и сокращений, набран с использованием прописных и строчных русских букв. Проверить то, что все фразы (и только они) начинаются с прописной буквы; при необходимости откорректировать текст.
C++ Заполнять массив особым образом (для МНК)
Вот такая вот прога. ПРизвана заполнять массив особым образом(для МНК), но часть массива заполняется белибердой. ЧТо с этим делать? У ма не приложу, в чём проблема. Помогите, пожалуйста. int main() { const int N=5, k=3; int i, j, u; int x, y, xstep, arr; // xstep - массив степеней иксов от 0 до k for(i=0;i<k+1;i++) // обнуляем результативный массив for(j=0;j<k+2;j++) arr=0;
C++ Начал изучать С по книге, вроде обещали С++, но... http://www.cyberforum.ru/cpp-beginners/thread537165.html
В общем начал изучать С по книге, вроде обещали С++, но, помоему, он маленько по другому выглядет. Пример: printf("AaaAaAA") ; Или: scanf("%d", Num) ; Так же тута есть Постинкременты и преинкременты(++С и С++) Это что за язык???:wall: Еще у меня визуал говорит что в С++ нету int и поэтому при компиляции ошибку выдает(
C++ Функции: определить значение сложной функции Даны натуральные числа a, c, m. Получить f(n), где: см. скриншот! Что такое n? откуда мы его берем? подробнее

Показать сообщение отдельно
SerAlex
1 / 1 / 0
Регистрация: 02.04.2012
Сообщений: 3
03.04.2012, 00:14     Вывести слова и длину каждого из этих слов
Пример который ты привел написан на C. Вот работающая программа на сишке.

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
#include <stdio.h>
#include <string.h>
#include <ctype.h>
 
int main()
{
    char words[200]; // массив с вводимой строкой
    char word[40]; // вспомагательный массив для текущего слова
    int start = 0; // начало слова, предполагается что в начале строки не пробел
    int i;
    int wordLength; //
 
    gets(words); // читаем строку с консоли, читается все до перехода на новую
    // строку (\n)
    for (i = 0; i < strlen(words); i++) {
        if (isspace(words[i]) || i == strlen(words) - 1) { // если нашли пробел либо конец строки то выделяем слово
            if (i != strlen(words) - 1) // если конец строки последний символ не нужно заменять концом строки
                words[i] = '\0'; // если же нам попался пробел то заменяем его на симовол конца строки
            strcpy(word, words + start); // копируем текущее слово из words в word
            wordLength = strlen(word); // длинна слова вычисляется с помощью библиотечной функции
            if (wordLength >= 2) // если больше либо равно двум значит есть вероятность что подойдет под шаблон '%ВА'
                if (word[wordLength - 2] == 'B' && word[wordLength - 1] == 'A') {
                    // если два последний ВА то  выводим на екран слово и длинну строки
                    printf("Word: %15s length: %2d\n", word, strlen(word));
                }
            words[i] = ' '; // заменяем обратно символ конца строки на пробел (если его там небыло это уже не важно)
            word[0] = '\0'; // "обнуляем" наше текущее слово
            start = i + 1; // начало следующего слова сразу после пробела
        }
 
    }
 
}
 
Текущее время: 17:15. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru