Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.75/40: Рейтинг темы: голосов - 40, средняя оценка - 4.75
47 / 47 / 13
Регистрация: 21.04.2009
Сообщений: 265
1

Сортировка строки по длине слова

24.03.2011, 17:02. Просмотров 7927. Ответов 4
Метки нет (Все метки)

Сабж. Здравствуйте. Есть код, который вроде логически построен правильно, но он не работает. Уже не знаю как быть. Подскажите пожалуйста в чем проблема.

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
#include <cstdlib>
#include <iostream>
#include <cstring>
#include <cctype>
 
using namespace std;
 
int main(int argc, char *argv[])
{ 
    char str[] = "Etu stroku nado otsortirovati po dlinne slov";
    char * pch;
    char *list[100];
    int s=0;   
      pch = strtok (str," ,.-");
    while (pch != NULL)
    {      
      list[s] = pch;
      pch = strtok (NULL, " ,.-");      
      s++;
    }  
 
    int i,j;
   
    char S1[20];
    int min_i;
 
    for (i=0; i<s-1; i++)
    {
       min_i=i;       
       for (j=i+1; j<s; j++)
       {
          if (strlen(list[j]) < strlen(list[min_i]))          
             min_i=j;           
       }
       cout << list[min_i] << "\n";         
    }   
    
    system("PAUSE");
    return EXIT_SUCCESS;
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
24.03.2011, 17:02
Ответы с готовыми решениями:

Привести (уменьшить) все слова случайной строки к одинаковой длине (длине наименьшего слова)
1)Запрограммировать работу с строчным типом string. 2) Обращение к элементам строке организовать с...

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

Сортировка строк по длине первого слова
Добрый вечер формучане.Облазил весь нет как и этот форум но толком ничего не нашел.Собственно...

Сортировка слов в строке по длине слова
Помогите пожалуйста с алгоритмом сортировки строки. Необходимо осуществить сортировку строки чтобы...

4
Freelance
Эксперт С++
2871 / 1806 / 356
Регистрация: 09.09.2010
Сообщений: 3,841
24.03.2011, 17:45 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
28
29
30
31
32
33
34
35
36
37
#include <iostream>
#include <cstring>
#include <cstdio>
 
struct word_t{
  char *_word;
  size_t length;
};
 
#define DELIM " \t\n,.:;?!"
 
void _swap(word_t &w1, word_t &w2){
  word_t tmp = w1;
  w1 = w2;
  w2 = tmp;
}
 
int main()
{
  char str[BUFSIZ] = "Etu stroku nado otsortirovati po dlinne slov", *p;
  word_t words[BUFSIZ];
  int i = 0, j;
  for(p = strtok(str, DELIM); p; p = strtok(NULL, DELIM)){
    words[i]._word = new char[strlen(p) + 1];
    strcpy(words[i]._word, p);
    words[i++].length = strlen(p);
  }
  for(int i_ = 0; i_ < i; ++i_)
    for(j = i_; j < i; ++j)
      if(words[i_].length > words[j].length)
        _swap(words[i_], words[j]);
  for(j = 0; j < i; ++j)
    std::cout << words[j]._word << '-' << words[j].length << '\n';
  for(j = 0; j < i; ++j)
    delete[] words[j]._word;
  return 0;
}
1
Делаю внезапно и красиво
Эксперт С++
1309 / 1224 / 72
Регистрация: 22.03.2011
Сообщений: 3,744
24.03.2011, 17:47 3
А удалять за собой кто будет?
1
Freelance
Эксперт С++
2871 / 1806 / 356
Регистрация: 09.09.2010
Сообщений: 3,841
24.03.2011, 17:49 4
Цитата Сообщение от Deviaphan Посмотреть сообщение
А удалять за собой кто будет?
О, пардон, все время забываю.
0
2 / 2 / 1
Регистрация: 06.06.2012
Сообщений: 121
23.04.2014, 16:59 5
http://awmdgroup.wikidot.com/phppractice:sortarray
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
23.04.2014, 16:59

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Сортировка Listbox по длине слова
Здравствуйте! Подскажите как отсортировать listbox по длине слова (по убыванию) и по...

Выбрать из заданной строки все слова, длина которых равна длине первого слова
Напишите программу, выбирающую из заданной строки все слова, длина которых равна длине первого...

Удалить из файла строки содержащие слова в которых количество символов равно максимальной длине слова
здравствуйте,не могу справиться с задание:дан текстовый файл.удалить строки содержащие слова в...

Сортировка слов по длине первого слова
Хотелось бы понять, почему в нижнем цикле я ставлю || != '\n' вместо &amp;&amp; != '\n' то проиходит ошибка...


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

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

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