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

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

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Реализация класса множество через двусвязный список. http://www.cyberforum.ru/cpp-beginners/thread377617.html
дали задание реализовать класс множество через двусвязный список. Сам класс список мне реализовать вроде удалось, но стоит загвоздка в том, как реализовать некоторые функции для множества:...
C++ Построить класс для описания плоской геометрической фигуры прямоугольник Построить класс для описания плоской геометрической фигуры прямоугольник. Предусмотреть методы для создания объектов и изменения. http://www.cyberforum.ru/cpp-beginners/thread377593.html
ошибка в функции подскажите как исправить C++
в функции ввод списка с экрана, там был бесконечный цикл который прерывался операторов Break, препод сказал что это не грамотно прерывать цикл с помощью Break, попытался в while само условие написать...
C++ Определение матрицы смежности графа по заданной матрице инцидентности
Доброй ночи :) Изучаю графы, написал фукнцию для конвертации матрицы инцидентности в матрицу смежности, а наоборот не выходит. Слева на рисунке матрицы инцидентности, с неё получаю матрицу...
C++ Unicod http://www.cyberforum.ru/cpp-beginners/thread377531.html
Доброго времени суток. Подскажите кто знает достойный материал(возможно книги) по использованию юникода в срр приложениях. Об LPWSTR WCHAR и тд. С юникодам ранее практически не работал, а найти...
C++ Найти все натуральные числа, не превышающие заданного N, которые делятся на каждую из своих цифр. Найти все натуральные числа, не превышающие заданного N, которые делятся на каждую из своих цифр. Надо решить через функцию .Без массивов. подробнее

Показать сообщение отдельно
-=ЮрА=-
Заблокирован
Автор FAQ
04.11.2011, 12:48
Цитата Сообщение от keep-it-real Посмотреть сообщение
задание на строки
Дана символьная строка.Слово-последовательность символов между пробелами, не содерж. пробелы внутри себя.Найти самое короткое из слов в предложении
Как написать?надо написать на обычном элементарном си, т.к. только начинаю программировать
Ниже код на Си и скриншот работы
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
42
43
44
45
#include <stdio.h> 
#include <string.h>
#include <stdlib.h>
 
int main()
{   
    long sLen;//Áóäåò ñîäåðæГ*ГІГј Гў Г±ГҐГЎГҐ äëèГ*Г*Гі ГІГҐГЄГіГ№ГҐГЈГ® ñëîâГ*
    long mLen;//Áóäåò ñîäåðæГ*ГІГј Гў Г±ГҐГЎГҐ ìèГ* äëèГ*Г*Гі ñëîâГ* Гў ñòðîêå
    char chr;
    char str[1024];//èñõîäГ*Г*Гї ñòðîêГ*
    char buf[1024];//ГЎГіГґГґГҐГ°
    char delim[] = " ,.!?;";//ГђГ*çäåëèòåëè ìåæäó ñëîâГ*ìè
    printf("\tEnter input string\n");
    scanf("%[^\n]%c",str,&chr);//Г‚ str ГІГ® Г·ГІГ® ââåëè Гў chr - '\n' îò ââîäГ*
    sprintf(buf,"%s",str);
    char * word = strtok(buf,delim);
    if(!word)
        printf("String not contain words or empty!\n");
    else
    {
        //Èùåì äëèГ*Г*Гі ìèГ* ñëîâГ*
        //Г‡Г*ГЇГЁГ±Г*ëè Гў mLen äëèГ*Г*Гі 1-ГЈГ® ñëîâГ*
        mLen = strlen(word);
        word = strtok(NULL,delim);
        while(word)
        {
            sLen = strlen(word);
            if(sLen < mLen)
                mLen = sLen;
            word = strtok(NULL,delim);
        }
        //Òåïåðü óæå ГЁГ№ГҐГ¬ Г±Г*ìî ñëîâî Г± äëèГ*Г*îé mLen
        word = strtok(str,delim);
        while(word)
        {
            sLen = strlen(word);
            if(mLen == sLen)
                break;
            word = strtok(NULL,delim);
        }
        printf("\tWord with min length : %s\n",word);
    }
    system("pause");
    return 0;
}
1
Миниатюры
Найти самое короткое из слов в предложении  
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru