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

Написать программу, обеспечивающую ввод строк и обмен местами слов максимальной и минимальной длины в каждой - C++

Восстановить пароль Регистрация
 
krolex
9 / 9 / 1
Регистрация: 27.01.2010
Сообщений: 63
01.05.2010, 20:50     Написать программу, обеспечивающую ввод строк и обмен местами слов максимальной и минимальной длины в каждой #1
не могу понять что в проге не так,на данный момент "по идеи" прога должна разбить строку на много много слов)))но пока не работает даже эта малая часть всего.....помогите плиз понять что нетак....заранее спасибо))

вот общее задание:

Дана последовательность строк.
Каждая строка состоит из слов, разделенных пробелами.
Написать программу, обеспечивающую ввод строк и их корректировку.
Корректировка заключается в обмене местами слов максимальной и минимальной длины в каждой строке.
Если сре-ди слов строки есть несколько таких слов, то в обмене участвуют только первые обнаруженные слова.
Вывести на печать исходную и скорректированную последовательности строк.


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
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
#include "stdafx.h"
#include <stdio.h>
#include <string.h>
#include <conio.h> 
#include <stdlib.h>
 
 
 
struct st // Объявление структуры st
{
    char *str;//stroki
}
struct st1 // Объявление структуры st1
{
    char *str1,*token1;//str1-kopija stroki,tokeni
};
struct ptr // Объявление структуры ptr
{
    char *ptr1,*maxtoken,*mintoken,*token;
};
st mas[5];
st1 mas1[5];
ptr mas2[50];
int i;
char seps[] = " ";
 
int _tmain(int argc, _TCHAR* argv[])
{
 
    for (int i=0;i<5;i++)
    {
        mas[i].str=new char[100];
        mas1[i].str1=new char[100];
 
        printf ("vvedite stroku: %d=",i);//zapros na vvod stroki
        gets(mas[i].str);//s4itivanie stroki
        mas1[i].str1=mas[i].str;//sozdanie kopii dla raboti s nej
        printf ("stroka : %d = %s\n",i,mas1[i].str1);//vivod kopii dla kontrolja
        puts("--------------------------kopija---------------------");
    }
 
    for (int i=0;i<5;i++)
    {
        mas1[i].token1=new char[100];
        mas1[i].token1 = strtok( mas1[i].str1, seps );//запоминание первого слова в переменную token
 
        int s=0;
        mas2[s].ptr1=strchr(mas1[i].str1,' ');//указатель на первый пробел после первого слова
        mas2[s].ptr1++;
        while (mas2[s].ptr1 != NULL) //poka ukazatel ne na konec stroki
        {
            mas2[s].token=strtok( mas2[s].ptr1, seps );//запоминание 2-50 слова в токен
 
            mas2[s+1].ptr1=strchr(mas2[s].ptr1,' ');//ustanovka ukazatela na next slovo -probel
            mas2[s+1].ptr1++;//ustanovka na next slovo
            s++;
        }
    }
    getch();
    return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.05.2010, 20:50     Написать программу, обеспечивающую ввод строк и обмен местами слов максимальной и минимальной длины в каждой
Посмотрите здесь:

C++ Составить программу, обеспечивающую ввод и сохранение на диске информации о заброшенных мячах в игре баскетбол
C++ Слово максимальной длины заменить на слово минимальной длины
Определить в предложении слова максимальной и минимальной длины и поменять их местами. C C++
C++ Поменять местами слово максимальной и минимальной длины.
C++ В строке, состоящей из слов и знаков препинания (пробел . : , ! ?-;), найти слово максимальной длины
В строке, состоящей из слов и знаков препинания, найти слово максимальной длины C++
Вывод двух слов максимальной длины C++
Написать программу для определения максимальной и минимальной суммы двух соседних элементов массива C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

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