Форум программистов, компьютерный форум, киберфорум
C для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.71/7: Рейтинг темы: голосов - 7, средняя оценка - 4.71
433 / 352 / 259
Регистрация: 29.11.2011
Сообщений: 628
1

При использовании функции cin перед функцией gets(), вводится только первое значение

02.12.2011, 19:38. Показов 1400. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Подскажите, почему при использовании функции cin перед функцией gets(), вводится только первое значение, которое через cin?

Мне нужно что бы в функции input() последовательно вводилось три значения с экрана:
n
FIO
number_room

Где FIO вводится через gets();
Но оно не вводится, а сразу перескакивает на ввод number_room.
Как это можно исправить?


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
#include <iostream.h>
#include <cstdio> 
 
struct clinic {
    char FIO[50];
    int number_room;
};
 
void input(clinic data[20], int &n) {
    cout <<"\n n=";
    cin >>n;
    
    cout <<"\nFIO - ";
    gets(data[0].FIO);
 
    cout <<"\nNumber - ";
    cin >>data[0].number_room;    
}
 
int main(){ 
    int n;
    clinic data[20];
    input(data, n);
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
02.12.2011, 19:38
Ответы с готовыми решениями:

Почему портится поток cin при использовании функции getline
char a; cin.getline(a,5); cin.clear(); При вводе свыше 5 символов после функции getline надо...

При Select выводит только первое значение
Этот метод должен брать из таблицы user_music_type значение music_type_id с помощью user_id ,...

Ошибка в сортировке при выводе на экран, выводится только первое наименьшее значение
Создал программу, сортирующую массив,но есть ошибка в сортировке при выводе на экран, выводит...

Для чего в код вводится cin.ignore после того, как cin>> уже сработало?
Доброго времени суток! Просматриваю простой код. Вводится строка типа string: фунты и дюймы Затем...

1
go
Эксперт С++
3646 / 1378 / 243
Регистрация: 16.04.2009
Сообщений: 4,526
02.12.2011, 19:50 2
LASSO, будьте аккуратны с gets
А Вам Си нужен или С++?
0
02.12.2011, 19:50
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
02.12.2011, 19:50
Помогаю со студенческими работами здесь

Безконечый цикл при использовании cin и getline()
Здравствуйте, Есть вот такой простенький кусок кода: string tempid; string...

Как запретить преобразование типов при использовании cin
Как запретить преобразование типов при использовании объекта потокового ввода cin. Проблема в том,...

Qt Ошибка при использовании cin cout. Tcp client
C Qt начал работать недавно. Хочу написать клиент, который просто принимает строку, отправляет её...

Защита от дурака при вводе текста с помощью: cin.get cin.clear cin.sync
Доброго времени суток. На С++ учусь с недавних пор. Имеется стандартная &quot;защита от дурака&quot; на ввод....


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru