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

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

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

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

18.09.2013, 13:32. Просмотров 760. Ответов 8
Метки нет (Все метки)

Сформировать список студентов, в котором студентки-отличницы расположены по алфавиту. Список выдать на экран. Студенток-отличниц при выводе пометить.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.09.2013, 13:32     Сформировать список студентов
Посмотрите здесь:

Сформировать список студентов института C++
C++ Отсортировать список студентов по принадлежности к кафедре
Упорядочить список студентов по году рождению C++
C++ Сформировать список из вещественных чисел. Упорядочить список по возрастанию.
C++ Дан список студентов (STL)
C++ Создание структуры Список студентов
Сформировать стек из N студентов C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Нету имени
177 / 22 / 2
Регистрация: 16.05.2013
Сообщений: 181
18.09.2013, 15:25     Сформировать список студентов #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
#include <iostream>
#include <stdlib.h> // system( "pause" );
#include <locale.h> // setlocale( LC_ALL, "Rus" );
 
struct students {
    char   * name;
    double   bal;
    bool     metka;
};
 
int main( int argv, char * argc[] ) {
    setlocale( LC_ALL, "Rus" );
    
    students stud[] = {
        "Петрова",  4.00, false,
        "Иванова",  4.23, false,
        "Авдеева",  5.00, false,
        "Василюк",  3.33, false,
        "Новикова", 5.00, false
    };
    
    char alfavit[] = { 'А', 'Б', 'В', 'Г', 'Д', 'Е', 'Ё', 'Ж', 'З', 'И', 'Й', 'К', 'Л', 'М', 'Н', 'О', 'П', 'Р', 'С', 'Т', 'У', 'Ф', 'Х', 'Ц', 'Ч', 'Ш', 'Щ', 'Ы', 'Э', 'Ю', 'Я' };
    
    for( int i=0; i<( sizeof( stud )/sizeof( stud[0] ) ); i++ )
        for( int j=0; j<( sizeof( alfavit )/sizeof( alfavit[0] )); j++ )
            if( stud[i].bal == 5.0 && stud[i].name[0] == alfavit[j] ) {
                std::cout << stud[i].name << std::endl;
                stud[i].metka = true;
            }
    
system( "pause" );
return 0;
}
alsav22
5411 / 4807 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
18.09.2013, 17:45     Сформировать список студентов #3
Нету имени, упростили задание:
Цитата Сообщение от varkl Посмотреть сообщение
список студентов, в котором студентки-отличницы
Т.е., есть список студентов, в котором есть студенты и студентки, причём, не только отличницы.
Цитата Сообщение от varkl Посмотреть сообщение
Список выдать на экран. Студенток-отличниц при выводе пометить.
Весь список вывести, а не только суденток-отличниц.
Нету имени
177 / 22 / 2
Регистрация: 16.05.2013
Сообщений: 181
19.09.2013, 07:09     Сформировать список студентов #4
Цитата Сообщение от alsav22 Посмотреть сообщение
упростили задание:
Сообщение от varkl список студентов, в котором студентки-отличницы Т.е., есть список студентов, в котором есть студенты и студентки, причём, не только отличницы.
Сообщение от varkl Список выдать на экран. Студенток-отличниц при выводе пометить. Весь список вывести, а не только суденток-отличниц.
недочитал задание)

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
#include <iostream>
#include <stdlib.h> // system( "pause" );
#include <locale.h> // setlocale( LC_ALL, "Rus" );
 
struct students {
    char   * name;
    double   bal;
    char     pol;
    char   * metka;
};
 
int main( int argv, char * argc[] ) {
    setlocale( LC_ALL, "Rus" );
    
    students stud[] = {
        "Курочкин  ",  3.24, 'М', "",
        "Петрова   ",  4.00, 'Ж', "",
        "Иванова   ",  4.23, 'Ж', "",
        "Авдеева   ",  5.00, 'Ж', "",
        "Василюк   ",  3.33, 'Ж', "",
        "Новикова  ",  5.00, 'Ж', "",
        "Калашников",  5.00, 'М', "",
        "Деревянко ",  4.24, 'М', ""
                
    };
    
    char alfavit[] = { 'А', 'Б', 'В', 'Г', 'Д', 'Е', 'Ё', 'Ж', 'З', 'И', 'Й', 'К', 'Л', 'М', 'Н', 'О', 'П', 'Р', 'С', 'Т', 'У', 'Ф', 'Х', 'Ц', 'Ч', 'Ш', 'Щ', 'Ы', 'Э', 'Ю', 'Я' };
    
    for( int j=0; j<( sizeof( alfavit )/sizeof( alfavit[0] )); j++ )
        for( int i=0; i<( sizeof( stud )/sizeof( stud[0] )); i++ )
            if( stud[i].name[0] == alfavit[j] ) {
                if( stud[i].pol == 'Ж' && stud[i].bal == 5.0 ) {
                    stud[i].metka = "Студентка-отличница";
                    std::cout << stud[i].name << "\t" << stud[i].bal << "\t" << stud[i].pol << "\t" << stud[i].metka << std::endl;
                } else {
                    std::cout << stud[i].name << "\t" << stud[i].bal << "\t" << stud[i].pol << std::endl;
                }
            }
    
system( "pause" );
return 0;
}
После.Словие.
в фамилиях нарошно пробелы понаставил, чтобы список ровно выводился
AntonChik
1083 / 581 / 21
Регистрация: 11.11.2008
Сообщений: 1,544
19.09.2013, 09:22     Сформировать список студентов #5
Цитата Сообщение от Нету имени Посмотреть сообщение
в фамилиях нарошно пробелы понаставил, чтобы список ровно выводился
а двойная(тройная) табуляция не рулит?
Нету имени
19.09.2013, 09:54
  #6

Не по теме:

AntonChik, лично у меня не помогает двойная(тройная) табуляция

Tulosba
:)
Эксперт С++
4384 / 3227 / 297
Регистрация: 19.02.2013
Сообщений: 9,044
19.09.2013, 10:36     Сформировать список студентов #7
Нету имени, http://www.cplusplus.com/reference/iomanip/setw/
alsav22
19.09.2013, 13:20
  #8

Не по теме:

Нету имени, а почему у вас, внизу постов, нет +1Спасибо, и л\с вам не отправить? Это из-за чего так?

MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.09.2013, 14:48     Сформировать список студентов
Еще ссылки по теме:

C++ Программирование с использованием файлов: список студентов
C++ Список студентов (структуры)
C++ Реализовать односвязный список студентов
Список студентов C++
Создать файл, содержащий список студентов группы C++

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

Или воспользуйтесь поиском по форуму:
Нету имени
20.09.2013, 14:48     Сформировать список студентов
  #9

Не по теме:

alsav22, 1. возможно из за того, что я почтовый ящик менял, и забыл активировать
2. из за того что я вам уже поставил +1 спасибо

Yandex
Объявления
20.09.2013, 14:48     Сформировать список студентов
Ответ Создать тему
Опции темы

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