Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 14.11.2009, 10:30   #1
vvioleta
Новичок
Джуниор
 
Регистрация: 14.11.2009
Сообщений: 2
По умолчанию обработка массивов

Здравствуйте, Помогите пожалуйста написать программу на си, просто я только начала изучать программирование и не могу понять, как реализовать это: дана строка символов. признак конца строки-символ '\n'(перевод строки), строка состоит из слов, разделенных пробелами,вывести на экран слова длиной более 4 символов, начинающихся на символ 'c', и их количество.
vvioleta вне форума Ответить с цитированием
Старый 14.11.2009, 13:10   #2
sinj
программирователь
Пользователь
 
Аватар для sinj
 
Регистрация: 15.02.2009
Сообщений: 72
По умолчанию

вот, пожалуйста, только я сам новичок и не ручаюсь за оптимальность!

#include <iostream>
int main()
{
char dan[]="cat cats ccats222 cccc";
int i=sizeof(dan);
int sch_bukv=0;
int position_perv=0;
int nuznoe_slovo=0;
int ok=0;
int kol=0;
for (int i=0;i<sizeof(dan);i++)
{
if (((i==0)||((i!=0) && (dan[i-1]==' ')))&&(dan[i]=='c')) {ok=1;position_perv=i;};
if ((dan[i]!=' ')&&(ok==1)) {sch_bukv++;};
if ((dan[i]==' ')||(i+1==sizeof(dan)))
{
if (sch_bukv>3){for (int j=position_perv;j<(i);j++) {std::cout<<dan[j];};std::cout<<std::endl;ok=0;kol++; }

sch_bukv=0;position_perv=0;
};
};

std::cout<<kol<<" vsego slov"<<std::endl;
system("pause");
return 0;
}
smile
sinj вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
обработка одномерных массивов felmor Помощь студентам 16 05.02.2009 19:22
Обработка массивов. C++ for DOS. slog Помощь студентам 0 09.12.2008 17:34