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

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

Войти
Регистрация
Восстановить пароль
 
Hardcore
4 / 4 / 0
Регистрация: 24.10.2010
Сообщений: 200
#1

Тип данных "Anketa" - не получается ввести пол - C++

07.06.2011, 23:54. Просмотров 290. Ответов 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
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
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
#include <iostream>
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <windows.h>
#include <clocale>
 
using namespace std;
 
struct ANKETA
{
int age;
char sex[30];
char edu[40];
char answ[30];
};
 
struct STR
{
ANKETA *Anketa;
STR *next;
};
 
STR * create(ANKETA *Anketa)
{
STR *root = new STR;
root -> Anketa = Anketa;
root -> next = NULL;
return root;
}
 
void add(ANKETA *Anketa, STR* root)
{
while(root -> next)
root = root -> next;
root -> next = new STR;
root -> next -> Anketa = Anketa;
root -> next -> next = NULL;
}
 
void printANKETA(ANKETA *Anketa)
{
cout << "Age: " << Anketa -> age << endl;
cout << "Gender: " << Anketa -> sex << endl;
cout << "Education : " << Anketa -> edu << endl;
cout << "Answer: " << Anketa -> answ << endl;
cout << endl;
}
 
ANKETA * makeANKETA()
{
cout << "Vvedite dannye ankety: " << endl;
ANKETA *Anketa = new ANKETA;
fflush(stdin);
cout << "Enter age: ";
cin >> Anketa -> age;
 
cout << "Enter gender: ";
cin.getline(Anketa -> sex,30);
 
cout << "Enter education(primary, average, higher): ";
cin.getline(Anketa -> edu,40);
 
cout << "Enter answer: ";
cin.getline(Anketa -> answ,30);
 
return Anketa;
}
 
int choice()
{
int answer;
_getch();
system("cls");
cout << "Menu" << endl;
cout << "1. Dobavit novuyu anketu" << endl;
cout << "2. Vivod bazi anket na ekran" << endl;
cout << "3. Poisk anket" << endl;
cout << "4. Quit" << endl;
cout << "Viberite deystvie: ";
cin >> answer;
fflush(stdin);
if(answer >= 1 && answer <= 3)
return answer;
else
return 0;
}
 
int main()
{setlocale (0,"Rus");
STR *root = NULL;
int ch;
while(1)
{
ch = choice();
if(ch == 1)
{
cout << endl;
if(root == NULL)
root = create(makeANKETA());
else
add(makeANKETA(),root);
}
 
else if(ch==2)
{
cout << endl;
int i = 0;
int N = 0;
 
STR *proot = root;
while (root)
{
N++;
root = root -> next;
}
 
ANKETA **pAnketa=new ANKETA*[N];
root = proot;
 
while (root)
{
pAnketa[i] = root -> Anketa;
root = root -> next;
i++;
}
 
root = proot;
 
for (i = 0; i < N; i++)
printANKETA(pAnketa[i]);
 
}
 
else if(ch == 3)
{
char qwe[30], q[1];
cout << "Enter age, gender, education and answer: " << endl;
cin.getline(qwe,30);
}}}
Добавлено через 3 часа 28 минут
блин плиз посмотрите. неужели это сложно? просто у меня идеи нет поэтому поводу
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.06.2011, 23:54     Тип данных "Anketa" - не получается ввести пол
Посмотрите здесь:

C++ Абстрактный тип данных "СПИСОК"
C++ Ввести класс для работы с объектом "многочлен"
C++ Используя структуру с полями пол, ФИО, возраст, распечатать количество парней , фамилии которых начинаются на "Д" и призывного возраста...
C++ Ввести класс для работы с объектом "рациональная дробь"
C++ Не получается переопределить операторы "+" и "="
Для чего функции поместили в "тип данных"? C++
Абстрактный тип данных "Собака" C++
C++ Есть массив Т [5], каждый элемент которого имеет тип "Структура Телефон". Ввести его с клавиатуры
Можно ли "подменить" тип данных в процессе выполнения? C++
Сортировка по признаку "Пол" C++
Определить тип данных "множество целых чисел" C++
Объяснить термин "абстрактный тип данных" C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
OstapBender
 Аватар для OstapBender
581 / 519 / 35
Регистрация: 22.03.2011
Сообщений: 1,585
08.06.2011, 00:03     Тип данных "Anketa" - не получается ввести пол #2
Сообщение было отмечено автором темы, экспертом или модератором как ответ
для начала
C
1
2
3
cout << "Enter age: ";
cin >> Anketa -> age;
cin.ignore();
Hardcore
4 / 4 / 0
Регистрация: 24.10.2010
Сообщений: 200
08.06.2011, 00:27  [ТС]     Тип данных "Anketa" - не получается ввести пол #3
спасибо получилось)
Yandex
Объявления
08.06.2011, 00:27     Тип данных "Anketa" - не получается ввести пол
Ответ Создать тему
Опции темы

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