Форум программистов
 
Расширенный поиск
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > C++ > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Ответ
 
Опции темы
Старый 21.11.2017, 20:14   #1
laketych
Пользователь
 
Регистрация: 22.12.2015
Сообщений: 26
Репутация: 9
По умолчанию Как отсортировать string структуру по алфавиту

Код:

#include <iostream>
#include <string>
#include <Windows.h>
#include <iomanip>
#define SIZE 10
 
using namespace std;
 
struct Stationery {
    string name_type;
    char item_type;
    short int min_amount;
    double price;
}stationery[SIZE];
 
int main() {
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
 
    int cntr;
 
    cout << "Данные: " << endl;
    for (cntr = 0; cntr < SIZE; cntr++) {
        cout << cntr + 1 << ". Наименувание товара: ";
        cin >> stationery[cntr].name_type;
 
        if (stationery[cntr].name_type == "Конец") {
            break;
        }
 
        cout << "\t" << "Тип товара: ";
        cin >> stationery[cntr].item_type;
 
        cout << "\t" << "Цена за 1 шт.(руб.): ";
        cin >> stationery[cntr].price;
 
        cout << "\t" << "Минимальная стоимость товара: ";
        cin >> stationery[cntr].min_amount;
 
        cout << endl;
    }
 
    cout << endl << endl << endl << endl << endl;
    cout << "-------------------------------------------------------------------------------------------" << endl;
    cout << "|                                          Прайс-лист                                     |" << endl;
    cout << "-------------------------------------------------------------------------------------------" << endl;
    cout << "| Наименувание товара | Тип товара | Цена за 1 шт. (руб.) | Минимальная стоимость товара  |" << endl;
    cout << "-------------------------------------------------------------------------------------------" << endl;
    for (int cout_cntr = 0; cout_cntr < cntr; cout_cntr++) {
        cout << "|" << setw(14) << stationery[cout_cntr].name_type << setw(8) << "|" << setw(6) << stationery[cout_cntr].item_type << setw(7) << "|"
            << setw(13) << stationery[cout_cntr].price << setw(10) << "|" << setw(17) << stationery[cout_cntr].min_amount << setw(15) << "|"
            << endl;
        cout << "-------------------------------------------------------------------------------------------" << endl;
    }
    return 0;
}

Как отсортировать по алфавиту string стркутуру? СПАСИБО!
laketych вне форума   Ответить с цитированием
Старый 23.11.2017, 12:00   #2
СтудПом
Форумчанин
 
Регистрация: 08.11.2017
Сообщений: 158
Репутация: 3
По умолчанию

А как собственно сравниваете строки?
"string структура" - это абсурд.
Вообще, судя по коду, у вас мешанина из C и C++. Будет тяжело разбираться.

сравнение строк на языке C
Код:

#include <string.h> 
int strcmp (const char *str1, const char *str2);

результат:
больше нуля, если первая строка должна идти "дальше по алфавиту"
ноль, если строки равны
меньше нуля, если первая строка "меньше"
т.е. сравнение идёт по кодам символов и первое неравенство даёт результат типа разности байт или ноль.
СтудПом вне форума   Ответить с цитированием
Ответ



Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как отсортировать строки по алфавиту? laketych Общие вопросы C/C++ 0 15.11.2017 23:38
Отсортировать числа по алфавиту Scorpil Общие вопросы C/C++ 3 18.10.2008 01:32
Отсортировать по алфавиту Rio309 Помощь студентам 2 09.03.2008 23:52
Отсортировать по алфавиту asale Microsoft Office Excel 5 19.11.2007 23:01




05:48.


Powered by vBulletin® Version 3.8.8 Beta 2
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.

купить трафик


как улучшить посещаемость, а также решения по монетизации сайтов, видео и приложений

RusProfile.ru


Справочник российских юридических лиц и организаций.
Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru