Подсчет количества символов в словах введенной строки - 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};
Объяснение кода листинга программы
- Объявлена строка типа char с именем
str
и размером в 1000 символов, где первые 1000 символов имеют значение NULL. - Введенная строка будет храниться в этом массиве.
- При вводе строки, она будет записываться в массив
str
. - После ввода строки, программа будет выполнять следующие действия: а) Вычислять длину строки (количество символов) и сохранять ее в переменную. б) Выводить значение переменной на экран. в) Очищать экран для следующего ввода.
- Код не содержит ошибок и будет работать корректно.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д