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

Вывести слова в порядке, соответствующем латинскому алфавиту - C++

Восстановить пароль Регистрация
 
Т_А_Н_Я
 Аватар для Т_А_Н_Я
0 / 0 / 0
Регистрация: 11.04.2012
Сообщений: 3
12.04.2012, 19:42     Вывести слова в порядке, соответствующем латинскому алфавиту #1
Дана строка символов, состоящих из произвольного текста на английском языке, слова разделены пробелом. Вывести на экран слова этого текста в порядке, соответствующем латинскому алфавиту.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.04.2012, 19:42     Вывести слова в порядке, соответствующем латинскому алфавиту
Посмотрите здесь:

Ввести строку, вывести слова по алфавиту. C++
Вывести слова в обратном порядке C++
Вывести слова, в которых нет повторяющихся букв и буквы слова упорядочены по алфавиту C++
C++ Вывести на экран слова текста в порядке, соответствующем латинскому алфавиту
Вывести слова в обратном порядке C++
C++ В строку через пробел вводятся слова. Отсортировать введенные слова по алфавиту. Результат вывести в виде столбца.
Вывести слова в таком порядке, чтобы последняя буква каждого слова совпадала с первой буквой следующего C++
C++ Вывести слова в алфавитном порядке

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
w@
10 / 10 / 1
Регистрация: 11.04.2012
Сообщений: 28
12.04.2012, 22:42     Вывести слова в порядке, соответствующем латинскому алфавиту #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
#include <iostream>
#include <string>
 
using namespace std;
 
void main()
{
    setlocale(LC_ALL,"Rus");
    char str[]="rem dummy file for ntvdm";
    char delim[]=" ";
    char *token;
    char *strM[15];
    int i=0;
    token =strtok(str,delim);
    while(token!=NULL) {
        strM[i]=new char[15];
        strcpy(strM[i++],token);
        token=strtok(NULL,delim);
    }
    for (int j=0;j<i;++j)
        cout<<strM[j]<<endl;
    char *temp=new char[15];
    bool b=true;
    while(b){
        b=false;
        for(int j=0;j<i-1;++j)
            if((int)strM[j][0]>(int)strM[j+1][0]){
                strcpy(temp,strM[j]);
                strcpy(strM[j],strM[j+1]);
                strcpy(strM[j+1],temp);
                b=true;
            }           
    }
    cout<<endl;
    for (int j=0;j<i;++j)
        cout<<strM[j]<<endl;
    system("pause");
}
код рабочий, правда чувствителен к регистру.
форумчанам просьба показать более эффективный и более понятный(визуально) код. не против STL, однако на собеседованиях просят показать работу со строками без него
Yandex
Объявления
12.04.2012, 22:42     Вывести слова в порядке, соответствующем латинскому алфавиту
Ответ Создать тему
Опции темы

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