Сформировать числовой массив с количеством букв в строке (Си) - C (СИ)
Формулировка задачи:
Помогите пожалуйста с решением.
Сформировать числовой массив N, элементы которого указывают длину каждого слова в заданном предложении. Напечатать исходный текст и массив N.
Решение задачи: «Сформировать числовой массив с количеством букв в строке (Си)»
textual
Листинг программы
- #include <stdlib.h>
- #include <stdio.h>
- #include <locale.h>
- #include <time.h>
- #define MAX 100
- int main()
- {
- setlocale(LC_ALL,"rus");
- char ch[MAX];
- int i=0,word,cnt=0,k=0;
- gets(ch);
- for(i=0,word=0;i<strlen(ch);i++)
- if(ch[i+1]=='\0'||ch[i]==' ')
- word++;
- int ar[word];
- for(i=0;i<=strlen(ch)+1;i++)
- {
- if(ch[i]!=' '&&ch[i]!='\0')
- cnt++;
- else
- {
- ar[k]=cnt;
- k++;
- cnt=0;
- }
- }
- puts(ch);
- for(i=0;i<word;i++)
- printf("%d ",ar[i]);
- return 0;
- }
Объяснение кода листинга программы
В этом коде задача состоит в том, чтобы сформировать числовой массив с количеством букв в строке. Вот список действий, которые выполняются в коде:
- Включаются необходимые заголовочные файлы.
- Определяется максимальное значение для индексов массива и переменных.
- Устанавливается русская локаль.
- Считывается строка с помощью функции gets().
- В цикле проходит по всем символам строки.
- Если текущий символ является концом слова или пробелом, то увеличивается счетчик слов.
- Создается массив с числовыми значениями, равными количеству букв в каждом слове.
- В цикле проходят по всем символам строки.
- Если текущий символ не является пробелом или концом строки, то увеличивается счетчик.
- Если текущий символ является пробелом или концом строки, то значение счетчика записывается в массив, а счетчик сбрасывается.
- Выводится исходная строка.
- В цикле выводятся значения из массива.
- Код завершается и возвращается 0.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д