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

Подсчитать количество слов в строке - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 15, средняя оценка - 4.87
Rom@
22 / 31 / 3
Регистрация: 29.11.2009
Сообщений: 210
12.04.2010, 16:17     Подсчитать количество слов в строке #1
1.Дано строку слова в которой разделены пробелом (1 или несколькими). Подсчитать количество слов в даной строке.
2.Дано текст. Подсчитать количество строк.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.04.2010, 16:17     Подсчитать количество слов в строке
Посмотрите здесь:

C++ подсчитать количество слов в строке
C++ Массив символов (Подсчитать количество слов в строке, при условии, что в качестве разделителя слов используется один или несколько пробелов)
Подсчитать количество слов в заданной строке C++
C++ Подсчитать количество слов в строке
C++ Дан текст, в котором слова разделены одним пробелом. а) Подсчитать количество слов в данной строке. б) Подсчитать количество букв а в последнем слове
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Genius Ignat
1233 / 771 / 44
Регистрация: 16.09.2009
Сообщений: 2,014
12.04.2010, 16:24     Подсчитать количество слов в строке #2
1
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <stdio.h>
#include <conio.h>
#include <string.h>
 
#define size 255
int main(){
char buf[size];
printf("input text: "); gets(buf);
unsigned int lenght = strlen(buf);
unsigned int i ;
int count = 1;
for( i = 0 ; i < lenght ; i++)if(buf[i]==' '||buf[i]=='\0')count++;
printf("count of words : %d",count);
printf("\n");
 
getch();
return 0;
}
easybudda
Модератор
Эксперт С++
 Аватар для easybudda
9371 / 5421 / 914
Регистрация: 25.07.2009
Сообщений: 10,423
12.04.2010, 16:27     Подсчитать количество слов в строке #3
Genius Ignat, если между словами несколько пробелов (а по условию допускается) - будет неправильно считать.
Genius Ignat
1233 / 771 / 44
Регистрация: 16.09.2009
Сообщений: 2,014
12.04.2010, 16:28     Подсчитать количество слов в строке #4
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
#include <stdio.h>
#include <conio.h>
#include <string.h>
 
#define size 255
int main(){
char buf[size] = "ddddddddd\n aaaaaaa\n nrrrrr\n kkkk \n ";
 
 
unsigned int lenght = strlen(buf);
unsigned int i ;
printf("%s",buf);
printf("\n");
 
int count = 0;
for( i = 0 ; i < lenght ; i++)if(buf[i]=='\n')count++;
printf("count of str : %d",count);
printf("\n");
 
 
 
 
 
 
getch();
return 0;
}
easybudda
Модератор
Эксперт С++
 Аватар для easybudda
9371 / 5421 / 914
Регистрация: 25.07.2009
Сообщений: 10,423
12.04.2010, 16:29     Подсчитать количество слов в строке #5
C
1
2
3
4
5
6
7
8
9
10
...
#include <string.h>
...
char buf[SOME_SIZE], *p;
size_t count;
...
for ( count = 0, p = strtok(buf, " "); p != NULL; ++count, p = strtok(NULL, " ") )
  ;
printf("%d words\n", count);
...
Genius Ignat
1233 / 771 / 44
Регистрация: 16.09.2009
Сообщений: 2,014
12.04.2010, 16:32     Подсчитать количество слов в строке #6
Genius Ignat, если между словами несколько пробелов (а по условию допускается) - будет неправильно считать.
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <stdio.h>
#include <conio.h>
#include <string.h>
 
#define size 255
int main(){
char buf[size];
printf("input text: "); gets(buf);
unsigned int lenght = strlen(buf);
unsigned int i ;
int count = 1;
for( i = 0 ; i < lenght ; i++)if((buf[i]==' '&&buf[i+1]!=' ')||buf[i]=='\0')count++;
printf("count of words : %d",count);
printf("\n");
 
getch();
return 0;
}
Если и здесь плохо исправлять не буду.
Rom@
22 / 31 / 3
Регистрация: 29.11.2009
Сообщений: 210
12.04.2010, 16:32  [ТС]     Подсчитать количество слов в строке #7
Есть проблема!! Если ввести два пробела подряд то оно выведет что это тоже слово.
romex
 Аватар для romex
44 / 44 / 4
Регистрация: 11.04.2010
Сообщений: 223
12.04.2010, 17:36     Подсчитать количество слов в строке #8
Можно так!
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include<stdio.h>
#include<string.h>
#define SBUF 256
int main(){
    int i=0;
    char buf[SBUF];
    printf("\nEnter string\n");
    gets(buf);
    if(strtok(buf," ")!=0){
        i++;
        while(strtok(NULL," ")!=NULL){
            i++;
        }
    }
    printf("%d\n",i);
    return 0;
}
Rom@
22 / 31 / 3
Регистрация: 29.11.2009
Сообщений: 210
12.04.2010, 20:17  [ТС]     Подсчитать количество слов в строке #9
Genius Ignat, мне нужно чтобы пользователь сам вводил текст
Rom@
22 / 31 / 3
Регистрация: 29.11.2009
Сообщений: 210
16.04.2010, 20:56  [ТС]     Подсчитать количество слов в строке #10
Цитата Сообщение от Rom@ Посмотреть сообщение
Дано строку слова в которой разделены пробелом (1 или несколькими). Подсчитать количество слов в даной строке.
Блин препод немного изменил условие надо:
Дано строку слова в которой разделены пробелом (1 или несколькими). Подсчитать количество слов в даной строке, которые содержат "ААА".
easybudda
Модератор
Эксперт С++
 Аватар для easybudda
9371 / 5421 / 914
Регистрация: 25.07.2009
Сообщений: 10,423
16.04.2010, 23:00     Подсчитать количество слов в строке #11
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
#include <iostream>
#include <string>
#include <sstream>
 
/*
    Дана строка, слова в которой разделены пробелом (1 или несколькими). 
    Подсчитать количество слов в даной строке, которые содержат "ААА". 
*/
 
int main(){
    std::string buf, tmp;
    size_t cnt = 0;
    const std::string to_find = "AAA";
    
    std::cout << "String: ";
    std::getline(std::cin, buf);
    std::istringstream ist(buf);
 
    while ( ist >> tmp )
        if ( tmp.find(to_find) != std::string::npos )
            ++cnt;
    
    std::cout << cnt << " words contain \"" << to_find << "\"" << std::endl;
    
    return 0;
}
Rom@
22 / 31 / 3
Регистрация: 29.11.2009
Сообщений: 210
16.04.2010, 23:13  [ТС]     Подсчитать количество слов в строке #12
Цитата Сообщение от easybudda Посмотреть сообщение
#include <sstream>
а что ето за библиотека?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.04.2010, 23:31     Подсчитать количество слов в строке
Еще ссылки по теме:

C++ Подсчитать количество букв, слов и цифр в строке
C++ Подсчитать количество всех строк, а потом - количество слов в каждой строке
Подсчитать количество слов в строке C++

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

Или воспользуйтесь поиском по форуму:
easybudda
Модератор
Эксперт С++
 Аватар для easybudda
9371 / 5421 / 914
Регистрация: 25.07.2009
Сообщений: 10,423
16.04.2010, 23:31     Подсчитать количество слов в строке #13
Rom@, в ней объявлены классы для манипуляции строками, как потоками ввода/вывода (istringstream, ostringstream, etc...)
Yandex
Объявления
16.04.2010, 23:31     Подсчитать количество слов в строке
Ответ Создать тему
Опции темы

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