Задание : Строка содержит произвольный текст. Вывести сколько раз в ней встречается цифра 0, 1, 2, 3, 4, 5, 6, 7, 8, 9. Найти две наиболее часто встречающиеся цифры. Входные данные: строка S.
Я разработал такой код
#include <stdio.h>
#include <stdlib.h>
#include <Windows.h>
int main()
{
SetConsoleCP(1251);
SetConsoleOutputCP(1251);
char s[255] = { 0 };
int num = 0;
printf("Введите строку: ");
gets(s);
for (int i = 0; i < strlen(s); i++)
{
for (int j = i; j < strlen(s); j++)
if (s[i] == s[j])
num++;
for (int k = i +1; k < strlen(s); k++)
if (s[k] == s[i]) s[k] = 0;
if (s[i]!=0)
printf("Символ %c встречается %d раз\n", s[i], num);
num = 0;
}
Но не понимаю, как его довести до выполнения поставленной задачи
char s[255] = {0};
int m[10] = {0};
gets(s);
size_t n = strlen(s);
for (size_t i = 0; i < n; ++i) {
if(isdigit(s[i]))
++m[int(s[i] - '0')];
}
//в этом массиве индексы соответствуют цифре, а значения количеству
int max1 = 0, max2 = 0, index1 = 0, index2 = 0;;
for (int i = 0; i < 10; ++i) {
if(m[i] > max1) {
max2 = max1;
index2 = index1;
max1 = m[i];
index1 = i;
}
}
cout << index1 <<" встречается " << max1 <<" раз" <<endl
<<index2 << " встречается " << max2 <<" раз";
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Здравствуйте, перед вами очередная студенческая задачаХотелось бы узнать принцип работы моего кода, который я не могу понять
Я хочу иметь возможность удалить добавленный LineEdit
Для проекта нужно сделать компиляцию *sass файлов через gulp