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

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

Восстановить пароль Регистрация
 
Hardcore
4 / 4 / 0
Регистрация: 24.10.2010
Сообщений: 200
07.06.2011, 23:54     Тип данных "Anketa" - не получается ввести пол #1
когда запускается программа в первом пункте, не получается ввести пол не подскажите в чем проблема?
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" - не получается ввести пол
Посмотрите здесь:

Класс Anketa C++
Как ввести предложение через пробелы? C++
Как на C++ ввести с консоли строку с пробелами в тип string? C++
Не получается создать свой тип данных C++
C++ Составить структуру данных состоящую из полей (Фамилия, год рождения, пол)
C++ Какое получается значение и тип имеет литерал 3.14e1L
Определить тип данных "Запись", имеющий поля "Фамилия", "Пол", "Зарплата" 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" - не получается ввести пол
Ответ Создать тему
Опции темы

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