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

Сортировка строк в алфавитной последовательности - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Ввести символьную строку и заменить все буквы "а" на буквы "б" и наоборот, как заглавные, так и строчные. http://www.cyberforum.ru/cpp-beginners/thread522861.html
1. Ввести символьную строку и заменить все буквы "а" на буквы "б" и наоборот, как заглавные, так и строчные. Пример: Введите строку: ааббссААББСС Результат: ббаассББААСС 2....
C++ Сформировать текстовый файл, который содержит номера телефонов сотрудников учреждения: указываются фамилия, инициалы и номер телефона. A. Сформировать текстовый файл, который содержит номера телефонов сотрудников учреждения: указываются фамилия, инициалы и номер телефона. B. Используя данные из этого файла, напечатать номер... http://www.cyberforum.ru/cpp-beginners/thread522852.html
Операции с текстовым файлом. C++
Кто может помочь, очень срочно нужно. Заранее спасибо. 1.A.Сформировать текстовый файл, в котором будет храниться список вашей группы. B.Используя данные из этого файла, напечатать фамилии тех...
массив. структурный тип. с++ C++
Имеются сведения об автомобилях: шифр, марка, модель, объем двигателя, цвет, наличие кондиционера, наличие сигнализации, год выпуска, цена. Напишите функции, которые выполняют следующие задачи: a. ...
C++ массив символов с++ http://www.cyberforum.ru/cpp-beginners/thread522848.html
Заданы три строки длиной по 11 символов. Напишите программу, которая соединит три строки в одну таким образом, что в первую очередь будет располагаться строка, которая начинается с любого символа от...
C++ Массив. с указателями с++ 1. Задан массив из 10 целых чисел. Посчитать количество смен знаков заданных чисел. Перебор элементов массива должен осуществляться посредством указателей. 2. Имеется перечень файлов, каждый из... подробнее

Показать сообщение отдельно
Dmon123123
Сообщений: n/a

Сортировка строк в алфавитной последовательности - C++

20.03.2012, 09:02. Просмотров 334. Ответов 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
60
61
62
63
64
65
66
67
68
69
70
71
72
#include "stdafx.h"
#include <iostream>
#include <ctype.h>
#include <string.h>
#include <conio.h>
 
using namespace std;
//-----------------------------------------------------
bool GetWord(char* string, char* word, int& worfOffset);
 
int main()
{
        const int bufferSize = 80;
        char buffer[bufferSize+1] = {0};      
        char word[bufferSize+1] = {0};  
        int wordOffset = 0;
        int k;
    
        cout << "Enter a string"<<endl<<"->";
        cin.getline(buffer, bufferSize);
 
        cout <<"Enter numbers symbols in the word:";
        cin >>k;
//------------------------------------------------------        
        while (GetWord(buffer, word, wordOffset) )
{
    if(k>=(int)strlen(word))
    cout <<"Got to the word:"<<word<<endl;
}   
    _getch();
        return 0;
}
 
 
bool GetWord(char* string, char* word, int& wordOffset)
{
        if(!string[wordOffset])         
        return false;
        
        char *p1, *p2;
        p1 = p2 = string+wordOffset;    // указатель на слудующее слово
        
        
        for(int i=0; i<(int)strlen(p1) && !isalnum(p1[0]); i++)
                p1++;
        
        
        if(!isalnum(p1[0]))
        return false;
 
        p2=p1;
 
        while(isalnum(p2[0]))
                p2++;
 
        
        // разность указателей показывает длину слова
        int len = int (p2-p1);
        
 
        strncpy(word, p1, len);
        
        word[len] = '\0';
        
     
        for(int i=int(p2-string); i<(int)strlen(string) && !isalnum(p2[0]); i++)
                p2++;
                
        wordOffset = int(p2-string);
 
        return true;
}
Спасибо за внимание
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru