Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RusFAQ.ru: Программирование на C / C++


Новое направление Портала RusFAQ.ru:
MosHoster.ru - Профессиональный хостинг

РАССЫЛКИ ПОРТАЛА RUSFAQ.RU

/ КОМПЬЮТЕРЫ И ПО / Языки программирования / C/C++

Выпуск № 1084
от 01.08.2008, 12:35

Администратор:Калашников О.А.
В рассылке:Подписчиков: 457, Экспертов: 37
В номере:Вопросов: 1, Ответов: 3

Нам важно Ваше мнение об этой рассылке.
Оценить этот выпуск рассылки >>


Вопрос № 140816: Доброго дня вам уважаемые эксперты! Помогите пожалуйста в написании кода программы. Дана строка из N символов. Группы символов, разделенные пробелами (одним или несколькими) и не содержащие пробелов внутри себя, будем называть словами. Подсчит...

Вопрос № 140.816
Доброго дня вам уважаемые эксперты! Помогите пожалуйста в написании кода программы.
Дана строка из N символов. Группы символов, разделенные пробелами (одним или несколькими) и не содержащие пробелов внутри себя, будем называть словами. Подсчитать количество слов в данной последовательности.
Отправлен: 27.07.2008, 12:22
Вопрос задал: IvanovIvan (статус: Посетитель)
Всего ответов: 3
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Serginio
Здравствуйте, IvanovIvan!

#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <ctype.h>
#include <string.h>
int main()
{
clrscr();
char stroka[81];
char masglas[10]={'a','e','i','o','u','A','E','I','O','U'};
int i=0,j=0,len,digit=0,simbol=0,probel=0;
int glas=0,soglas=0,stroch=0,propis=0,slov=0;

gets(stroka);
len=strlen(stroka);

for(i=0;i<len;i++)
{
if(isdigit(stroka[i])) digit++;
if(isalpha(stroka[i])) simbol++;
if(isspace(stroka[i])) probel++;
}
printf(" В строке: Цифр = %d Букв = %d Пробелов = %d",digit,simbol,probel);

for(i=0;i<len;i++)
{
if(islower(stroka[i])) stroch++;
for(j=0;j<10;j++)
{
if(stroka[i]==masglas[j]) glas++;
}
}
propis=simbol-stroch;
soglas=simbol-glas;

printf(" Строчных = %d Прописных = %d",stroch,propis);
printf(" Гласных = %d Согласных = %d",glas,soglas);
i=0;
if(probel==0) slov=1;
if((digit+simbol)!=0 && !isspace(stroka[0])) slov=1;
else slov=0;
while(i<len-1)
{
if(isspace(stroka[i]) && !isspace(stroka[i+1])) slov++;
i++;
}
printf(" Слов = %d",slov);
getch();
return 0;
}
Ответ отправил: Serginio (статус: 1-ый класс)
Ответ отправлен: 27.07.2008, 14:53
Оценка за ответ: 5
Комментарий оценки:
Все работает отлично. Большое спасибо!

Отвечает: Ilkras
Здравствуйте, IvanovIvan!
Позвольте посоветовать вам воспользоваться функцией strtok() предназначенной специально для таких случаев. Ниже приведены две ссылки на документацию по этой функции с примерами использования.
ссылка 1http://www.cplusplus.com/reference/clibrary/cstring/strtok.html
ссылка 2http://www.cppreference.com/stdstring/strtok.html
Ответ отправил: Ilkras (статус: Студент)
Ответ отправлен: 27.07.2008, 15:00

Отвечает: Whois
Здравствуйте, IvanovIvan!
В приложении программа. Компилировал в Microsoft Visual Studio 2008.

Приложение:

Ответ отправил: Whois (статус: 1-ый класс)
Ответ отправлен: 27.07.2008, 15:09


Вы имеете возможность оценить этот выпуск рассылки.
Нам очень важно Ваше мнение!
Оценить этот выпуск рассылки >>

Отправить вопрос экспертам этой рассылки

Приложение (если необходимо):

* Код программы, выдержки из закона и т.п. дополнение к вопросу.
Эта информация будет отображена в аналогичном окне как есть.

Обратите внимание!
Вопрос будет отправлен всем экспертам данной рассылки!

Для того, чтобы отправить вопрос выбранным экспертам этой рассылки или
экспертам другой рассылки портала RusFAQ.ru, зайдите непосредственно на RusFAQ.ru.


Форма НЕ работает в почтовых программах The BAT! и MS Outlook (кроме версии 2003+)!
Чтобы отправить вопрос, откройте это письмо в браузере или зайдите на сайт RusFAQ.ru.


© 2001-2008, Портал RusFAQ.ru, Россия, Москва.
Авторское право: ООО "Мастер-Эксперт Про"
Техподдержка портала, тел.: +7 (926) 535-23-31
Хостинг: "Московский хостер"
Поддержка: "Московский дизайнер"
Авторские права | Реклама на портале

∙ Версия системы: 5.0 alpha от 21.07.2008

Яндекс Rambler's Top100
RusFAQ.ru | MosHoster.ru | MosDesigner.ru | RusIRC.ru
Kalashnikoff.ru | RadioLeader.ru | RusFUCK.ru

В избранное