Как посчитать количество символов в массиве c
Перейти к содержимому

Как посчитать количество символов в массиве c

  • автор:

Как посчитать количество разных букв в массиве строк?

Нужно с помощью циклов посчитать количество разных букв в этом слове.

  • Вопрос задан более года назад
  • 383 просмотра

2 комментария

Простой 2 комментария

Сергей Горностаев @sergey-gornostaev Куратор тега C
И? Что вы пытались сделать? С какими проблемами столкнулись?

mayton2019

mayton2019 @mayton2019
Близится пятница. Давайте поднимем ставки. Считаем буквы вообще без циклов.
Решения вопроса 1
Разработчик на С++, экс-олимпиадник.

Можно считать, например самые левые вхождения каждого символа. Для этого пройдитесь по массиву циклом, а внутри вторым циклом проверьте, а есть ли такой же символ левее данной позиции. Если вы такого повторения в цикле не нашли, то надо прибавить 1 к ответу.

Второй вариант — отсортировать символы. Там уже проще подсчитать все символы — это 1 + сколько разных соседей в отсортированном массиве. Это быстрее, если использовать быструю сортировку.

Ну или самый быстрый способ — в массиве на 256 счетчиков подсчитайте, сколько раз каждый символ встречается. Потом подсчитайте, сколько там ненулевых элементов.

Ответ написан более года назад
Виталий Аргонов @Fairenien Автор вопроса
Можете пожалуйста написать код, где проходим циклом по массиву, а внутри вторым циклом проверяем?

Виталий Аргонов, нет. Попробуйте сами. Можете, для начала, написать цикл, который проходится по строке и выводит каждый символ?

Теперь измените его, что бы считать, только буквы ‘a’.

Теперь напишите второй цикл внутри, и считайте, сколько одинаковых символов левее каждого.

Ответы на вопрос 0
Ваш ответ на вопрос

Войдите, чтобы написать ответ

cpp

  • C++
  • +1 ещё

Почему неправильно считает Коэффициенты регрессии?

  • 2 подписчика
  • 01 мая
  • 98 просмотров

Как посчитать количество элементов в массиве?

BacCM

Но лучше std::array использовать вообще. У него есть метод size.

Ответ написан более трёх лет назад
Нравится 2 3 комментария

BacCM

Правда так же требуется вся информация о типе массива, но в отличии от моего варианта, не скомпилируется при отсутствии этой информации. Что большой плюс.
Правда промышленная разработка на C++17 это пока только мечты. Мне бы мои легаси проекты заволочь хотя бы на 11

Vitaly @vt4a2h Куратор тега C++

Василий Мельников, ну второй вариант требует только 11го стандарта, насколько мне известно. std::array (который я и рекомендую использовать в данном случае) тоже только 11го стандарта требует.

Касательно C++17, многие компании, в том числе и наша, его уже давно используют. Два года прошло с утверждения как никак. Да и все популярные компиляторы его поддерживают.

Подсчет символов, строк и слов

Программа считает количество введенных пользователем символов, строк и слов. Чтобы программа корректно закончила работу и правильно посчитала, после набора строк надо перейти на новую строку, после чего нажать Ctrl + D (по крайней мере в терминале Linux).

#include int main() < char ch, flag=-1; unsigned c=0; // символы unsigned w=0; // слова unsigned n=0; // строки while ((ch = getchar()) != EOF) < if (ch == '\n') n++; else c++; if (ch == ' ' || ch == '\n') flag = -1; else if (flag == -1) < flag = 1; w++; >> printf("Символы: %u\n", c); printf(" Слова: %u\n", w); printf(" Строки: %u\n", n); >
one two three four Символы: 16 Слова: 4 Строки: 3

X Скрыть Наверх

Решение задач на языке C

Найти количество символов в слове

Есть массив на 80. В каждом элементе массива находится слово. Нужно подсчитать количество символов элементе массива.

Отслеживать

задан 25 дек 2019 в 18:07

85 5 5 бронзовых знаков

Нужно просто найти длину слова, или количество каких-то определенных символов? И массив на 80 чего?

– user361068

25 дек 2019 в 18:25

Мне просто нужно подсчитать количество символов с строке которая хранится в одном из элементов массива. Например: «hello» — 5 символов

25 дек 2019 в 18:30

strlen возвращает длину строки

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *