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

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

Войти
Регистрация
Восстановить пароль
 
orlitsia
0 / 0 / 0
Регистрация: 26.11.2012
Сообщений: 12
#1

Строки. Составить программу сортировки массива строк, введенных пользователем. - C++

28.11.2012, 18:02. Просмотров 893. Ответов 2
Метки нет (Все метки)

Составить программу сортировки массива строк, введенных пользователем. Использовать функцию strcmp ().
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.11.2012, 18:02
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Строки. Составить программу сортировки массива строк, введенных пользователем. (C++):

Составить программу сортировки массива строк по длине строки - C++
Составить программу сортировки массива строк по длине строки.

Составить программу сортировки массива строк по длине строки - C++
Помогите пожалуйста

Составить программу для сортировки данного набора строк по символу - C++
Составить программу для сортировки данного набора строк по символу с номером k>0. Значение k не превосходит длины с самой короткой строки...

Составить программу сортировки одномерного числового массива от начала массива к элементу с заданным номером по убыванию (методом выбора) - C++
Помогите составить программу на С++. Заданный номер - 28.

Введение массива пользователем и подсчет введенных элементов - C++
Кто нибудь! Пожалуйста! Нужна помощь!! Как подсчитать количество элементов в произвольно введенном массиве не используя векторов и прочих...

Пример быстрой сортировки массива строк и сортировки методом выбора - C++
Добрый вечер. Скиньте пожалуйста пример быстрой сортировки массива строк и сортировки массива строк методом выбора. Очень срочно надо,...

2
_Alexander
12 / 12 / 1
Регистрация: 05.11.2012
Сообщений: 49
28.11.2012, 23:34 #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
38
39
40
41
42
43
44
45
46
47
48
#include <iostream>
#include <string>
 
using namespace std;
 
void sort(char ** str, int len)
{
    char * temp = NULL;
    int l;
    for(int i=0;i<len-1;i++)
        if(strcmp(str[i],str[i+1])>0)
        {
            
            temp = new char[strlen(str[i])+1];
            strcpy(temp,str[i]);
            delete [] str[i];
 
            str[i] = new char[strlen(str[i+1])+1];
            strcpy(str[i],str[i+1]);
            delete [] str[i+1];
 
            str[i+1]=new char[strlen(str[i])+1];
            strcpy(str[i+1],temp);
            delete [] temp;
        }
}
 
void main()
{
    int len = 3;
    char a[256];
    char ** str = new char*[len];
    for(int i=0;i<len;i++)
    {
        cin.getline(a,256);
        str[i] = new char[strlen(a)+1];
        strcpy(str[i],a);
    }
 
    sort(str,len);
    for(int j=0;j<len;j++)
        cout<<str[j]<<endl;
        
    for(int j=0;j<len;j++)
        delete [] str[j];
    system("PAUSE");
 
}
я представляю себе это так)
1
booker
23 / 23 / 2
Регистрация: 21.11.2012
Сообщений: 106
29.11.2012, 00:11 #3
с самопальной strcmp()
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
62
63
64
65
66
#include <iostream>
#include <string>
#include <cstring>
using namespace std;
const int DAYS = 7;             //number of pointers in array
 
void bsort(char**, int);       //prototype
 
 
 
int main()
   {                            //array of pointers to char
   char* arrptrs[DAYS] = {"Sunday", "Monday", "Tuesday",
               "Wednesday", "Thursday",
               "Friday", "Saturday"};
      
   for(int j=0; j<DAYS; j++)    //display every string
   cout << arrptrs[j] << endl;
   cout<<endl;
      
   bsort(arrptrs,DAYS);
 
    for(int j=0; j<DAYS; j++)    //display every string
      cout << arrptrs[j] << endl;
 
 
  system( "pause");
   return 0;
 
   
   }
 
 
void bsort(char** ptr, int n)
   {
   void order(char**, char**);      //prototype
   int j, k;                    //indexes to array
 
   for(j=0; j<n-1; j++)         //outer loop
      for(k=j+1; k<n; k++)      //inner loop starts at outer
   order(ptr+j, ptr+k);         //order the pointer contents
   }
//--------------------------------------------------------------
void order(char** day1, char** day2)  //orders two numbers
   {
      char *temp1 = *day1;
      char *temp2 = *day2;
      while(*temp1||*temp2)
      {
      int a = static_cast<int>(*temp1);
      int b = static_cast<int>(*temp2);
      
      if(a>b)
      { 
         char*temp=*day1;
         *day1=*day2;
         *day2=temp;
         break;
      }
      
      if(a<b)
          break;
      else
      *temp1++;*temp2++;
}
}
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.11.2012, 00:11
Привет! Вот еще темы с ответами:

Написать программу дополняющую в файл D:\numbers.txt пять введенных пользователем целых чисел - C++
Написать программу дополняющую в файл D:\numbers.txt пять введенных пользователем целых чисел. Убедитесь при помощи редактора текста, что в...

Написать программу, которая из пяти введенных пользователем чисел, определяет число с наибольшей суммой цифр - C++
Помогите решить задачу по С++.При помощи цикла for. Написать программу, которая из пяти введенных пользователем чисел, определяет число с...

Написать программу, которая находит НОД(наибольший общий делитель) двух целых чисел, введенных пользователем - C++
Кто знает как в С++ решить задачу при помощи цикла for? Написать программу, которая находит НОД (наибольший общий делитель) двух целых ...

Написать программу, использующую стандартную функцию сравнения строк для определения среди трех строк, вводимых пользователем, одинаковых. - C++
Написать программу, использующую стандартную функцию сравнения строк для определения среди трех строк, вводимых пользователем, одинаковых.


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

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

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