Форум программистов, компьютерный форум CyberForum.ru

Создать функцию, которой строка передаётся как параметр, и которая возвращает количество слов - C++

Восстановить пароль Регистрация
 
mexx-nikitin
78 / 78 / 3
Регистрация: 28.03.2010
Сообщений: 302
01.06.2010, 20:29     Создать функцию, которой строка передаётся как параметр, и которая возвращает количество слов #1
создать функцию в которой строка передаётся как аргумент и возвращает количество слов
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.06.2010, 20:29     Создать функцию, которой строка передаётся как параметр, и которая возвращает количество слов
Посмотрите здесь:

C++ Создать функцию, которой строка передаётся как параметр, и которая возвращает количество слов
C++ Создать функцию, которая возвращает количество отрицательных элементов массива
создать фунуцию в которой строка передаётся как аргумент и возвращает количество слов C++
C++ Написать функцию, которая возвращает количество слов в строке
Создать функцию, которая возвращает количество двузначных элементов массива C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
easybudda
Модератор
Эксперт С++
 Аватар для easybudda
9373 / 5423 / 914
Регистрация: 25.07.2009
Сообщений: 10,423
01.06.2010, 20:44     Создать функцию, которой строка передаётся как параметр, и которая возвращает количество слов #2
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
 
ssize_t words_count(const char * str, const char * delim){
    char *s, *p;
    ssize_t cnt;
    if ( ( s = strdup(str) ) == NULL )
        return -1;
    for ( cnt = 0, p = strtok(s, delim); p != NULL; ++cnt, p = strtok(NULL, delim) )
        ;
    free(s);
    return cnt;
}
 
#define DELIM " ,.;:!?\t\n"
#define BUF_LEN 256
 
int main(void){
    char buf[BUF_LEN];
    ssize_t cnt;
 
    while ( 1 ){
        printf("String: ");
        if ( ! fgets(buf, BUF_LEN, stdin) ){
            perror("fgets");
            exit(EXIT_FAILURE);
        }
        if ( *buf == '\n' )
            break;
        if ( ( cnt = words_count(buf, DELIM) ) == -1 ){
            fprintf(stderr, "Shit happens!\n");
            exit(EXIT_FAILURE);
        }
        printf("%d words.\n", cnt);
    }
 
    exit(EXIT_SUCCESS);
}
mexx-nikitin
78 / 78 / 3
Регистрация: 28.03.2010
Сообщений: 302
01.06.2010, 20:46  [ТС]     Создать функцию, которой строка передаётся как параметр, и которая возвращает количество слов #3
а можеш проще написать,просто я на первом курсе и невсё понимаю
easybudda
Модератор
Эксперт С++
 Аватар для easybudda
9373 / 5423 / 914
Регистрация: 25.07.2009
Сообщений: 10,423
01.06.2010, 20:48     Создать функцию, которой строка передаётся как параметр, и которая возвращает количество слов #4
Цитата Сообщение от mexx-nikitin Посмотреть сообщение
а можеш проще написать,просто я на первом курсе и невсё понимаю
да неси, как есть - препод разберётся...
mexx-nikitin
78 / 78 / 3
Регистрация: 28.03.2010
Сообщений: 302
01.06.2010, 20:52  [ТС]     Создать функцию, которой строка передаётся как параметр, и которая возвращает количество слов #5
препод то разберётся)) , но потом заставит меня всё это объяснять.Лучше написать проще тогда никаких вопросов не задаст, напиши пожалуста попроще
AnDrew_LP
160 / 162 / 9
Регистрация: 29.05.2010
Сообщений: 435
01.06.2010, 20:56     Создать функцию, которой строка передаётся как параметр, и которая возвращает количество слов #6
А так?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include<iostream>
#include<string>
using namespace std;
int kol_slov(string s)
{
 int kol=1;
 for(int i=0;i!=s.length();i++)
  {
      if(s.at(i)==' ' && s.at(i+1)!=' ') kol++; 
  }
 return kol;
}
int main(void)
{
   cout<<"Enter string\n";
   string s;
   getline(cin,s);
   cout<<kol_slov(s);
   cin.get();
}
а можеш проще написать,просто я на первом курсе и невсё понимаю
А я только восьмой клас закончил, и что?
mexx-nikitin
78 / 78 / 3
Регистрация: 28.03.2010
Сообщений: 302
01.06.2010, 20:57  [ТС]     Создать функцию, которой строка передаётся как параметр, и которая возвращает количество слов #7
спасибо,теперь понятно
easybudda
Модератор
Эксперт С++
 Аватар для easybudda
9373 / 5423 / 914
Регистрация: 25.07.2009
Сообщений: 10,423
01.06.2010, 21:02     Создать функцию, которой строка передаётся как параметр, и которая возвращает количество слов #8
Цитата Сообщение от AnDrew_LP Посмотреть сообщение
if(s.at(i)==' ' && s.at(i+1)!=' ') kol++;
Пробел в конце строки - посчитается на слово больше...
AnDrew_LP
160 / 162 / 9
Регистрация: 29.05.2010
Сообщений: 435
01.06.2010, 21:04     Создать функцию, которой строка передаётся как параметр, и которая возвращает количество слов #9
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include<iostream>
#include<string>
using namespace std;
int kol_slov(string s)
{
 int kol=1;
 for(int i=0;i!=s.length();i++)
  {
      if(s.at(i)==' ' && s.at(i+1)!=' '&& i!=s.length()) kol++; 
  }
 return kol;
}
int main(void)
{
   cout<<"Enter string\n";
   string s;
   getline(cin,s);
   cout<<kol_slov(s);
   cin.get();}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
01.06.2010, 21:36     Создать функцию, которой строка передаётся как параметр, и которая возвращает количество слов
Еще ссылки по теме:

Написать функцию, которая зануляет массив переданный как параметр и возвращает кол-во отрицательных элементов до зануления? C++
C++ Строка не передаётся в функцию
C++ Написать функцию atoi(), которая принимает параметр - строку цифр и возвращает соответствующее ей целое

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
rangerx
1908 / 1517 / 139
Регистрация: 31.05.2009
Сообщений: 2,876
01.06.2010, 21:36     Создать функцию, которой строка передаётся как параметр, и которая возвращает количество слов #10
C
1
2
3
4
5
6
7
8
9
10
11
12
13
int countWords(const char* str)
{
   int count = 0;   
   while(*str)
   {
      if( isalnum(*str++) )
      {
     ++count;
     while( *str && isalnum(*str) ) ++str;
      }
   }
   return count;
}
Yandex
Объявления
01.06.2010, 21:36     Создать функцию, которой строка передаётся как параметр, и которая возвращает количество слов
Ответ Создать тему
Опции темы

Текущее время: 23:24. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru