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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
krolex
9 / 9 / 1
Регистрация: 27.01.2010
Сообщений: 63
#1

строки - C++

26.04.2010, 21:51. Просмотров 269. Ответов 0
Метки нет (Все метки)

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


помогите плиз исправить точто уже наколякал или написать норм прогу.....мозги кипят....заранее спасибо)))



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
#include "stdafx.h"
#include <stdio.h>
#include <string.h>
#include <conio.h> 
#include <stdlib.h>
 
int i;
 
struct st // Объявление структуры st
{
    char *str;
};
struct st1 // Объявление структуры st
{
    char *str1,*ptr1,*ptr2,*ptr3,*ptr4;
};
st mas[5];
st1 mas1[5];
char *str1;
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 copii dla raboti s nej
        printf ("stroka : %d = %s\n",i,mas1[i].str1);//vivod kopii dla kontrolja
        puts("--------------------------kopija---------------------");
    }
    puts("--------------------------isxodnie---------------------");
    for (int i=0;i<5;i++)
    {
        mas1[i].ptr1=new char;
        mas1[i].ptr2=new char;
        mas1[i].ptr3=new char;
        mas1[i].ptr4=new char;
        printf ("stroka : %d = %s\n",i,mas[i].str);//vivod isxodnix strok
        mas1[i].ptr1=mas1[i].str1;//указатель на первое слово
        mas1[i].ptr2=strchr(mas1[i].ptr1,' ');//указатель на первый пробел
        mas1[i].ptr2++;//указатель на первое слово после пробела
        while (mas1[i].ptr1!=" " && mas1[i].ptr1!=NULL) //не работующие условие якобы по условию до следующего пробела или конца строки
        {
            strncpy(mas1[i].ptr3,mas1[i].ptr1,1);
            mas1[i].ptr1++;
        }
 
        while (mas1[i].ptr2!=" " && mas1[i].ptr2!=NULL)
        {
            strncpy(mas1[i].ptr4,mas1[i].ptr2,1);
            mas1[i].ptr2++;
        }
 
    }
    getch();
    return 0;
}
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.04.2010, 21:51
Здравствуйте! Я подобрал для вас темы с ответами на вопрос строки (C++):

Сгенерировать две произвольные строки и определить, является ли какое-либо слово первой строки частью второй строки - C++
Сгенерировать две произвольные строки и определить, является ли какое-либо слово первой строки частью второй строки. 1. Я дуб дубом,даже...

Добавить строки, начиная со строки К1 и до строки К2, в динамический массив строк - C++
Есть динамический массив строк. Заполняется, т.е. размер его уже известен будет. Но дальше нужно сделать задание: &quot;Добавить строки, начиная...

Удалить строки динамической матрицы, начиная со строки К1 и до строки К2 - C++
Сформировать динамический двумерный массив, заполнить его случайными числами и удалить строки, начиная со строки К1 и до строки К2 вот...

Ввести две символьных строки. Выполнить поиск второй строки в первой и вывести номер позиции первой строки, с которой вторая строка содер-жится в ней - C++
Ввести две символьных строки. Выполнить поиск второй строки в первой и вывести номер позиции первой строки, с которой вторая строка...

Как считать строки из файла, если там больше одной строки? - C++
Как считать строки из файла в массив. Если в файле одна строка, то нет проблем, но если несколько, то при использовании функции fgets ...

Упорядочить символы строки B в алфавитном порядке и удалить латинские буквы из строки A - C++
&quot;Даны строки A и B. Если в A есть латинские буквы, а в B нет повторяющихся символов, то упорядочить символы B в алфавитном порядке и...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
26.04.2010, 21:51
Привет! Вот еще темы с ответами:

Чтение через fscanf_s части строки с пробелом (и запись этой же строки) - C++
нужно записать в файл строку, содержащую через табуляцию int, char, char, char, float, int. Далее необходимо из такой же строки вывести...

Прибавить ко всем элементам каждой строки максимальное значение этой строки - C++
добрый вечер! Помогите пожалуйста доработать код! Изменить текущий массив, прибавив ко всем элементам каждой строки максимальное...

Функция перезаписывает символы строки заданным количеством символов другой строки - C++
Программа работает. Но не совсем правильно. В конечной строке появляются непонятные символы, которых быть там не должно. В программе нельзя...

Найти среднее арифметическое каждой строки матрицы и отсортировать строки по возрастанию - C++
Дана квадратная матрица. Найти среднее арифметическое каждой строки и отсортировать строки по возрастанию этих характеристик


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

Или воспользуйтесь поиском по форуму:
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru