Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

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

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

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 03.06.2013, 06:50   #1
CppForYou
Пользователь
 
Регистрация: 08.03.2013
Сообщений: 37
По умолчанию вывод фамилий в алфавитном порядке

Код:
#include <iostream>
#include<Windows.h>
using namespace std;

struct WORKER 
{
    char surname[40]; // фамилия
    char post[40];    // название занимаемой должности
    int date;   //дата поступления на работу
};
int main() 
{
    while(true)
    {
        SetConsoleCP(1251);
		SetConsoleOutputCP(1251);
        int t;
        int const N = 3; 
        int staj; 
        bool f = true; // это логическая переменная, f равно значение истинно
        WORKER mass[N]; // массив структур
		cout << "\n\t==========МЕНЮ========" << endl;
       	cout << "\t1.Ввод данных" << endl;
		cout << "\t2.Просмотр данных " << endl;
		cout << "\t3.Фамилии работников (чей стаж превышает)" << endl;
		cout << "\t4.Выход" << endl;
		cout << "\n\n";
		cout << "Выберите один из пунктов: ";
        cin >> t;
		system("cls"); // очистка экрана
        if (t == 1) // если выбран первый пункт...
        {
            for( int i = 0; i < N; i++ ) // ... то заполняем массив структур (вводим данные)
            {
				cout << endl;
                cout << "Введите информацию о сотруднике №" << i+1 << "\n\n";
                cout << " Фамилия: ";    
                cin >> mass[i].surname; 
                cout << " Должность: "; 
				cin >> mass[i].post;
                cout << " Год поступление на работу: "; 
				cin >> mass[i].date;
				cout << endl;
			}
			system("pause");
			system("cls");
		}
		else if (t == 2) // если выбран второй пункт - просмотр вводимых данных
		{
			for (int i=0; i<N; i++)
			{
				cout << i + 1 << "-й сотрудник" << endl;
				cout << "\tФамилия: " << mass[i].surname << endl;
				cout << "\tДолжность: " << mass[i].post << endl;
				cout << "\tГод поступления на работу: " << mass[i].date << endl;
			}
			system("pause");
			system("cls");
		}
		else if (t == 3) // если выбран третий пункт то читаем данные (см. ниже)
        {
			cout << "Введите стаж работы в организации (текущий год 2013): ";
            cin >> staj;
			cout << "\nФамилии работников, чей стаж работы в организации превышает " << staj << " лет:\n\n";
			for( int i = 0; i < N; i++ ) // цикл для поиска работников
            {
                if( (2013 - mass[i].date) > staj ) //если стаж работы превышает значение заданного пользователем...
                {
                    cout << mass[i].surname << endl; //то выводим на экран фамилии работников чей стаж работы превышает значение
					f = false; // переменной f присваиваем значение ложь
                }
            }
			cout << endl;
            if(f) // если истинно то выводит соответствующее сбщ и ожидание нажатия клавиши
                cout << "\nНЕТ ТАКИХ РАБОТНИКОВ!\n\n";
            system("pause");
			system("cls");
        }
        else if (t == 4) exit(0); // иначе если выбран третий пункт то закрываем консоль
	}
	system ("pause");
    return 0;
}
вывод фамилий в алфавитном порядке - как это сделать? (else if (t == 3) )
CppForYou вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вывод слов в алфавитном порядке. strem92 Фриланс 9 20.04.2010 22:10
[C++] Вывод в алфавитном порядке? sailol Помощь студентам 6 27.04.2009 21:37
Вывод списка в алфавитном порядке ErvinR PHP 4 24.10.2008 16:03
отсортировать таблицу сначала в алфавитном порядке фамилий продавцов, затем в порядке возростания получен Lora Microsoft Office Excel 1 31.05.2008 17:22