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

Массивы структур, циклы - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Преобразовать целые числа в битовую посследовательность http://www.cyberforum.ru/cpp-beginners/thread775457.html
Имеется в файле посследовательность целых чисел X1,X2,X3,X4 unsigned long int, расположенных построчно. Нужно преобразовать эти целые числа в битовую посследовательность x1 1, x1 2, x1 3, x1 4, x1 5,...
C++ Тест по C++ Ребята помогите пожалуйста с тестом: 1. Переменную какого типа можно использовать в качестве селектора в операторе switch-case? A) int. B) double. C) char. D) Переменную пользовательского... http://www.cyberforum.ru/cpp-beginners/thread775440.html
C++ Как по лучше переписать данный кусок кода
FILE* f; int fileSize = 0; f = fopen("zz.txt","r"); char buf; fseek(f, 0, SEEK_END); rewind(f); fgets(buf,128,f); for(int i = 0,c=0; i<sizeof(buf)/sizeof(*buf); i++){ if((int)buf==0 ||...
Массивы и перегрузки C++
Есть парочка вопросов. Как объявить указатель на двумерный массив? На одномерный в таком виде int *ptr = new int ; а с двумерным так не получается. Как перегрузить индексацию двумерного...
C++ Перегрузка операторов http://www.cyberforum.ru/cpp-beginners/thread775427.html
class MyInt { private: int i; public: MyInt(int _i=0) { i=_i; } int getValue()
C++ Получить сумму тех чисел данной последовательности, которые кратны 5 Даны целые числа а1,…,а50. Получить сумму тех чисел данной последова-тельности, которые кратны 5 подробнее

Показать сообщение отдельно
Kayako
1 / 1 / 0
Регистрация: 14.10.2010
Сообщений: 23

Массивы структур, циклы - C++

30.01.2013, 18:43. Просмотров 272. Ответов 1
Метки (Все метки)

Пишу программку из книги.
Задание звучит так:
Коrда вы вступите в Блаrотворительный Орден Проrраммистов (БОП), к вам могyт обращаться на заседаниях БОП по вашему настоящему имени, по должности либо секретному имени БОП. Напишите проrрамму, которая может выводить списки членов по настоящим именам, должностям, секретным именам либо по предпочтению caмoro члена. В основу положите следующую структуру:
// Структура имен Блаrотворительноrо Ордена Проrраммистов (БОП)
struct Ьор {
char fullname[strsize];
char title[strsize];
char bopname[strsize];
int preference;
// настоящее имя
// должность
// секретное имя БОП
// о  полное имя, 1  титул, 2  имя БОП
} ;
в этой проrрамме создайте небольшой массив таких структур и инициализируйте ero соответствующими значениями. Пусть проrрамма запустит цикл, который даст возможность пользователю выбирать разные альтернативы:
а. отображать по именам b. Отображать по должностям
с. отображать по именам БОП d. отображать по предпочтениям
q. выйти
Обратите внимание, что "отображать по предпочтениям"  не значит, что нужно отобразить предпочтение члена; это значит, что нужно отобразить значение тогo поля структуры, которое соответствует предпочтению. Например, если
preference равно 1, то выбор d должен вызвать отображение должности для данноrо программиста.


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
#include <iostream.h>
 
int main()
{
using namespace std;
const char strsize = 20;
struct Bop {
char fullname[strsize];    // настоящее имя
char title[strsize];    // должность
char bopname[strsize]; // секретное имя БОП
int preference;  // о  полное имя, 1  титул, 2  имя БОП
} ;
 
Bop pr[3] =
{
{"Wimp Macho", "Junior Programmer", "MIPS", 1},
{"Raki Rhodes","Analyst Trainee", "LOOPY", 0},
{"Selia Ligter", "Programmer", "LUCKY" , 2}
};
 
cout << "Otchet o BOP" << endl;
cout << "a. display by names         b. display by post"<< endl
<< "c. display by names BOP     d. display by preference"
<< endl << "q. quit\n";
cout << "Your choice: ";
 
char value;
cin >> value;
while(value !='q')
{
switch(value)
{
case 'a' : cout << pr[0].fullname << endl << pr[1].fullname << endl
<< pr[2].fullname << endl;
break;
case 'b' : cout << pr[0].title << endl << pr[1].title << endl
<< pr[2].title << endl;
break;
case 'c' : cout << pr[0].bopname << endl << pr[1].bopname << endl
<< pr[2].bopname << endl; break;
case 'd' : // не могу понять как доделать
case 'q' :  cout << "Bye!"; break;
}
 cout<<"\nsleduushii vibor:";
        cin>>value;
 
   }
cin.get();
cin.get();
return 0;
}
У меня никак не получается выводить список по предпочтениям. Знаю, что нужно организовать цикл if else для проверки значений поля preference. Как бы я ни делала - успехи такие же. Помогите пожалуйста.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru