С Новым годом! Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.90/21: Рейтинг темы: голосов - 21, средняя оценка - 4.90
0 / 0 / 1
Регистрация: 26.06.2015
Сообщений: 16
1

Найти самое длинное предложение в тексте

17.09.2015, 14:21. Показов 4150. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Найти самое длинное предложение в тексте( не строку)
Код для нахождения самой длинной строки:
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
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <conio.h>
 
int mystrlen(char* s)
{
    int n=0;
    while(s[n++]);
    return n-1;
} 
int main()
{
char **T;
int i, n, c, b, d;
printf("Zadayte kolichestvo strok \n");
scanf("%d", &n);
fflush(stdin);
T=new char *[n];
printf("Vvedite text\n");
 
for ( i=0; i<n; i++)
{ T[i]=new char [100]; gets(T[i]); }
int max=0;
printf("Samaya dlinnaya stroka:\n");
for (i=0; i<n; i++){b=mystrlen(T[i]);
    if (b>max) { max=b; c=i;}
}
d=mystrlen(T[c]);
for (i=0;i<d;i++)
printf("%c",T[c][i]);
}
Пробовал модифицировать функцию на
C++
1
2
3
4
5
6
int mystrlen(char* s)
{
    int n=0;
    while((s[n++]) && (s[n++] != "."));
    return n-1;
}
но выдает ошибку. Помогите пожалуйста)
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
17.09.2015, 14:21
Ответы с готовыми решениями:

Строки. В заданном тексте найти самое длинное слово и самое длинное предложение.
Задача: В заданном тексте найти самое длинное слово и самое длинное предложение. Помогите решить На...

Найти в тексте самое длинное слово и самое длинное предложение
вписать текст с клавиатуры и найти в этом тексте самое длинное слово и самое длинное...

Сколько предложений в тексте и вывести самое длинное предложение
Нужно на visual c++ Или хотя бы просто посоветуйте как сделать примерно, какие команды...

Найти самое длинное и самое короткое слово в тексте
Всем доброго времени суток! В моем задание нужно найти самое длинное и самое короткое слово в...

2
Модератор
Эксперт С++
13720 / 10917 / 6478
Регистрация: 18.12.2011
Сообщений: 29,146
17.09.2015, 14:38 2
В цикле Вы 2 раза увеличили n. Соответственно пропустили терминальный символ (или точку).
C++
1
2
while( s[n]  &&  s[n] != ".")
    n++;
0
838 / 641 / 940
Регистрация: 26.06.2015
Сообщений: 1,409
17.09.2015, 16:44 3
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
40
41
#include <iostream>
 
const char* offer_maxlen(const char* s, size_t& n){
    size_t m;
    const char* p, *o;
    
    for(o = NULL, n = 0; *s; s = p){
        while(*s && ((*s == ' ') || (*s == '\t')))
            ++s;
 
        for(p = s; *p; ++p){
            if((*p == '.') || (*p == '!') || (*p == '?')){
                ++p;
                break;
            }
        }
        
        m = (size_t)(p - s);
        if((m > 1) && (m > n)){
            n = m;
            o = s;
        }
    }
    return o;
}
 
int main(void) {
    char s[128];
    std::cout << "Enter: ";
    std::cin.getline(s, sizeof(s) - 1);
    std::cin.sync();
 
    size_t n;
    const char* p = offer_maxlen(s, n);
    if(p != NULL){
        std::cout.write(p, n);
        std::cout << std::endl;
    }
    std::cin.get();
    return 0;
}
0
17.09.2015, 16:44
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
17.09.2015, 16:44
Помогаю со студенческими работами здесь

Найти самое длинное и самое короткое слово в тексте
найти самое длинное и самое короткое слово в тексте #include &quot;stdafx.h&quot;endl; #include &lt;iostream&gt;...

Как найти самое длинное предложение?
В текстовом файле найти самое длинное предложение, язык Си, просто СИ, помогите пожалуйста!

Найти самое длинное число в тексте
Помогите исправить код пожалуйста. char text; int count=0,a={0}; for(int...

Найти самое длинное слово в тексте
Ввести текст с клавиатуры и найти в нем самое длинное слово. Помогите :cry:

Во введённом тексте найти самое длинное слово
Во введённом тексте найти самое длинное слово и вывести его на экран.

Найти самое длинное слово в заданном тексте
Помогите пожалуйста!!! задан текст, найти самое длинное слово.


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru