Модераторы: Daevaorn
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Строки в С++! Использование строк в С++ 
:(
    Опции темы
Baton2007
Дата 29.11.2007, 19:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 117
Регистрация: 29.11.2007

Репутация: нет
Всего: нет



У меня вопрос такой мне дали задание написать прогу которая подсчитывает количество слов в строке введенной пользователем я написал вот такую прогу но она считает пробелы , а не слова как мне ее доделать подскажите?
#include <stdio.h> 
#include <string.h>
#include<conio.h>
int main(void) { 

int j, i=0; 

char* str;
printf("\nVvedite stroky:");

gets(str); 

for(j = 0; j < strlen(str); j++) {
if(str[j] == ' ')
i++;
}
printf("Probelov v stroke %d\n",i);
getch();
}

PM MAIL   Вверх
Alek86
Дата 29.11.2007, 20:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1299
Регистрация: 30.1.2007
Где: Киев

Репутация: 21
Всего: 25



найти букву
если нашел букву, инкрементируй счетчик и дальше ищи небукву(или конец строки).
как найдешь небукву, дальше снова ищи букву...


--------------------
user posted image    user posted image
PM MAIL   Вверх
JackYF
Дата 29.11.2007, 20:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


полуавантюрист
****


Профиль
Группа: Участник
Сообщений: 5814
Регистрация: 28.8.2004
Где: страна тысячи озё р

Репутация: 18
Всего: 162



Baton2007, пользуйся кнопкой "Код".
И отредактируй название темы, из него задача ни фига не понятна.

Код

#include <stdio.h> 
#include <string.h>
#include<conio.h>
int main(void) { 

int j, wordsInString=0; 

char* str;
printf("\nVvedite stroky:");

gets(str); 

bool isWordNow = false;
for(j = 0; j < strlen(str); j++)
{
  if(str[j] == ' ')
  {
    isWordNow = false;
  }
  else
  {
     if (isalpha(str[j]) && !isWordNow)
     {
        isWordNow = true;
        wordsInString += 1;
     }
  }
}
printf("Probelov v stroke %d\n", wordsInString);
getch();
}

Для начала где-то так, писал здесь, мог ошибиться.

Добавлено через 1 минуту и 1 секунду
И пользуйся отступами, чтобы твой код можно было читать.


--------------------
Пожаловаться на меня как модератора можно здесь.
PM MAIL Jabber   Вверх
Baton2007
Дата 29.11.2007, 20:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 117
Регистрация: 29.11.2007

Репутация: нет
Всего: нет



Ребята я новичок мне попроще объясните!
PM MAIL   Вверх
JackYF
Дата 29.11.2007, 20:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


полуавантюрист
****


Профиль
Группа: Участник
Сообщений: 5814
Регистрация: 28.8.2004
Где: страна тысячи озё р

Репутация: 18
Всего: 162



Цитата(Baton2007 @  29.11.2007,  20:08 Найти цитируемый пост)
Ребята я новичок мне попроще объясните! 

Что тебе не понятно?


--------------------
Пожаловаться на меня как модератора можно здесь.
PM MAIL Jabber   Вверх
Baton2007
Дата 29.11.2007, 20:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 117
Регистрация: 29.11.2007

Репутация: нет
Всего: нет



А почему мой код не работает может просто умножить найденые пробелы на два т.к пробелы ставятся в основном между словами то их можно умножить и получится количество слов можно так или нет и как это реализовать?
PM MAIL   Вверх
JackYF
Дата 29.11.2007, 20:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


полуавантюрист
****


Профиль
Группа: Участник
Сообщений: 5814
Регистрация: 28.8.2004
Где: страна тысячи озё р

Репутация: 18
Всего: 162



Цитата(Baton2007 @  29.11.2007,  20:23 Найти цитируемый пост)
умножить найденые пробелы на два

то есть если у тебя 5 слов, между ними 4 пробела, то слов получается 4*2 == 8?


--------------------
Пожаловаться на меня как модератора можно здесь.
PM MAIL Jabber   Вверх
Baton2007
Дата 29.11.2007, 20:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 117
Регистрация: 29.11.2007

Репутация: нет
Всего: нет



Да чето я протупил ты прав так не выйдет!
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++:Общие вопросы"
Earnest Daevaorn

Добро пожаловать!

  • Черновик стандарта C++ (за октябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика(4.4мб).
  • Черновик стандарта C (за сентябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика (3.4мб).
  • Прежде чем задать вопрос, прочтите это и/или это!
  • Здесь хранится весь мировой запас ссылок на документы, связанные с C++ :)
  • Не брезгуйте пользоваться тегами [code=cpp][/code].
  • Пожалуйста, не просите написать за вас программы в этом разделе - для этого существует "Центр Помощи".
  • C++ FAQ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0806 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.