Напишите программу, которая читает текст и отображает число однобуквенных, двухбуквенных и т. Д. Слов. Слова делятся на символы: '', ',', ',' и '.'. Вход: текст в одной строке, не более 1000 символов. Вывод: n строк целых чисел, указывающих числа слов с соответствующими длинами, n - длина самого длинного слова в тексте.Как отобразить число n-буквенных слов в тексте? C++
Я думаю, что у меня есть небольшое представление о том, как считать все слова, но strlen еще не знаком мне и не знает, как действовать дальше. Любая помощь будет оценена, спасибо.
#include <iostream>
using namespace std;
int main()
{
char a[1000];
short count[1000];
int wc = 0;
int max = 0;
for (int i = 0; i < 1000; i++)
count[i] = 0;
for (int i = 0; i < 1000; i++)
{
cin >> a[i];
if ('\n')
break;
}
for (int i = 0; i < 1000; i++)
{
if (a[i] != ' ' && a[i] != ',' && a[i] != ';' && a[i] != '.')
wc++;
else
{
if (wc != 0)
{
count[wc]++;
if (wc > max)
max = wc;
}
wc = 0;
}
}
for (int i = 0; i < max; i++)
cout << count[i] << endl;
return 0;
}
Может кто-нибудь исправить это для меня, пожалуйста?
Утомляюсь задавать этот вопрос .. ЧТО ТЫ ПРОИГРАЛ? –
узнать, как использовать std :: map –
http://pubs.opengroup.org/onlinepubs/000095399/functions/strlen.html – Abhineet