Форум программистов, компьютерный форум, киберфорум
C++
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
Мат в 32 хода
236 / 171 / 18
Регистрация: 10.09.2009
Сообщений: 1,096
1

Ошибка при вводе данных

15.02.2010, 13:11. Показов 779. Ответов 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
#include <iostream>
#include <conio.h>
using namespace std;
struct man
{
char sex[10];
char name[20];
int age;
};
int main()
{
cout<<"Enter the name: _________________\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b";
char name[20];
cin.getline(name, 19);
cout<<"Enter your age: __\b\b";
int age;
cin>>age;
cout<<"Are you male or female? _______\b\b\b\b\b\b\b";
char sex[10];
cin.getline(sex, 9);
cout<<"You are "<<sex<<", Your name is "<<name<<",\nand You are "<<age<<" years old";
cout<<"\nAm I right?";
getch();
return 0;
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
15.02.2010, 13:11
Ответы с готовыми решениями:

Ошибка при вводе данных
Перескакивает через ввод поля &quot;Name&quot;. Заранее благодарен void add(){ char S1; char S2; ...

Ошибка при вводе данных и в функциях
Некорректно происходят вычисления x1 и x2. Так же при вводе в переменную a,b или c начинается...

Ошибка при вводе строковых данных
Программа перестаёт забирать данные после второго прогона цикла. Но после удаления строчек для...

Почему при вводе данных вылетает ошибка
вот написал программу #include &lt;iostream&gt; using namespace std; #define N 2 struct Spis { char...

2
1258 / 796 / 108
Регистрация: 16.09.2009
Сообщений: 2,010
15.02.2010, 13:28 2
nikkka:
В чём смысл задания?
0
230 / 227 / 65
Регистрация: 18.12.2009
Сообщений: 316
15.02.2010, 17:40 3
cin.ignore();
перед
cin.getline(sex, 9);

Добавлено через 11 минут
а проще используйте std::string

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
        cout<<"Enter the name: _________________\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b";
        std::string name;
        std::string sex;
        int age;
        cin>>name;
        cout<<"Enter your age: __\b\b";
        cin>>age;
        cout<<"Are you male or female? _______\b\b\b\b\b\b\b";
        cin>>sex;
        cout<<"You are "<<sex<<", Your name is "<<name<<",\nand You are "<<age<<" years old";
        cout<<"\nAm I right?";
        getch();
        return 0;
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
15.02.2010, 17:40

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Ошибка исполнения при вводе данных из файла
Добрый вечер, при выполнении кода #define _CRT_SECURE_NO_WARNINGS #include &lt;stdio.h&gt; #include...

При вводе данных в программу выходит ошибка Segmentation fault
В чем может быть ошибка? Заранее спасибо! #include &lt;iostream&gt; #include &lt;string&gt; using namespace...

Ошибка на вводе данных
#include &lt;stdio.h&gt; #include &lt;stdlib.h&gt; #include &lt;string.h&gt; #include &lt;ctype.h&gt; /* * В...

Почему при вводе числа программа работает нормально, а при вводе буквы уходит в бесконечный цикл?
void mainmenu() { cout &lt;&lt; &quot;Введи число&quot; &lt;&lt; endl; cin &gt;&gt; choice; if (choice == 1) { cout &lt;&lt;...

Ошибка при вводе
мне нужно записать числа с файла в список , подскажите что не так выводит последнее лишнее число не...

Обработка данных при вводе
При решении данной задачи обязательным условием является обработка входных данных сразу после их...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.