Подсчет количества символов в словах введенной строки - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Всем привет. Необходимо подсчитать количество символов в словах введенной строки. И все бы хорошо, но вот условия для циклов получаются ооочень длинными, целый день голову ломаю не могу понять как этого избежать. PS В условиях задачи написано, что из функций для работы со строками можно использовать только strlen().
#include <stdio.h>
#include <stdlib.h>
int main ()
{
    int i=0, j=0, x=0;
    char str[1000]={NULL};
    int val_letter[1000];
    gets (str);
    while (str[i]!=NULL)
    {
        while(((str[i]>64 && str[i]<91)||(str[i]>96 && str[i]<123))) /* И это только английские буквы =) */
        {
            x=x+1;
            i++;
        }
        if ( str[i-1]!=str[-1] && ((str[i-1]>64 && str[i-1]<91)||(str[i-1]>96 && str[i-1]<123))) /* А дальше еще страшнее)*/
        {
            val_letter[j]=x;
            x=0;
            j++;

        }
            i++;
    }
    for (i=0;i<j;i++) printf ("%i\t", val_letter[i]);
    system ("pause");
    return 0;
}

Решение задачи: «Подсчет количества символов в словах введенной строки»

textual
Листинг программы
char str[1000]={NULL};

Объяснение кода листинга программы

  1. Объявлена строка типа char с именем str и размером в 1000 символов, где первые 1000 символов имеют значение NULL.
  2. Введенная строка будет храниться в этом массиве.
  3. При вводе строки, она будет записываться в массив str.
  4. После ввода строки, программа будет выполнять следующие действия: а) Вычислять длину строки (количество символов) и сохранять ее в переменную. б) Выводить значение переменной на экран. в) Очищать экран для следующего ввода.
  5. Код не содержит ошибок и будет работать корректно.

Оцени полезность:

13   голосов , оценка 4.154 из 5
Похожие ответы