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

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

Войти
Регистрация
Восстановить пароль
 
fazanaka
Горе студент
37 / 37 / 1
Регистрация: 27.01.2010
Сообщений: 270
#1

Ввод числа в структуре - C++

17.05.2010, 17:46. Просмотров 319. Ответов 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
#include <iostream.h>
#include <string.h>
struct student
{
    int gr;
    char fio[40],pol[2];
}
grup[5];
main()
{
    char *f,*p;
    int kol=0,g,i;
    for (i=0;i<5;i++)
    {
        cin.getline(grup[i].fio,40,'.');
        cin.getline(grup[i].pol,2,'.');
        cin >> grup[i].gr;
    }
    for (i=0;i<5;i++)
    {
        f=grup[i].fio;
        p=grup[i].pol;
        g=grup[i].gr;
        if ((p=="m")&&(g<=1991))
        {
            kol++;
        }
    }
    cout << "kol= " << kol << endl;
    return 0;
}
объясните что не так
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.05.2010, 17:46
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Ввод числа в структуре (C++):

Ввод строки в структуре, заданной как char *str через scanf (ПОМОЩЬ) - C++
struct {char *str;} A; scanf(&quot;%s&quot;, &amp;A.str); Аварийное завершение программы после ввода. Если задавать вручную значение внутри...

Просуммировать два числа в структуре - C++
Появился очень интересный вопрос. Можно ли как-то просуммировать два числа в самой структуре? Вот мой код, но выдаёт неизвестное число....

Как можно сравнивать в структуре числа и выводить на экран по возрастанию, если структура находится в файле? - C++
Как можно сравнивать в структуре числа и выводить на экран по возрастанию, если структура находится в файле?

Ввод чисел через пробел до определеного числа,убрать оставшиеся числа - C++
Нужно ввести числа через проблем, набор заканчиваеться числом меньше или равно нулю. Пример: 1 2 3 -1 5 6 7 (занести нужно будет...

Как осуществить ввод числа, не зная какой тип числа будет введён? - C++
И не объявляя вводимую переменную как double...

Пользователь вводит с клавиатуры целые числа. Чтобы закончить ввод – необходимо ввести 0. Вывести негативные числа. - C++
Пользователь вводит с клавиатуры целые числа. Чтобы закончить ввод – необходимо ввести 0. Вывести негативные числа. Неполучаетса вывод...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Maxim Prishchepa
Эксперт С++
1922 / 1034 / 74
Регистрация: 29.03.2010
Сообщений: 3,167
17.05.2010, 17:51 #2
Цитата Сообщение от fazanaka Посмотреть сообщение
есть программа, не вводит число в структуре
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
#include <iostream.h>
#include <string.h>
struct student
{
    int gr;
    char fio[40],pol[2];
}
grup[5];
main()
{
    char *f,*p;
    int kol=0,g,i;
    for (i=0;i<5;i++)
    {
        cin.getline(grup[i].fio,40,'.');
        cin.getline(grup[i].pol,2,'.');
        cin >> grup[i].gr;
    }
    for (i=0;i<5;i++)
    {
        f=grup[i].fio;
        p=grup[i].pol;
        g=grup[i].gr;
        if ((p=="m")&&(g<=1991))
        {
            kol++;
        }
    }
    cout << "kol= " << kol << endl;
    return 0;
}
объясните что не так
если честно, первый раз встречаюсь с конструкцией cin.getline(grup[i].fio,40,'.');, возможно в последнем параметре передаётся закрывающий элемент строки, попробуйте ввести строку, а в конце поставить точку.
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.05.2010, 17:51
Привет! Вот еще темы с ответами:

Ввод двузначного числа и вывод обратного числа - C++
Помогите пожалуйста сделать( Арифметика: Z=4 cosα2 ⋅cos52 α⋅cos 4α Текст: Составить программу, в которая запрашивает ввод...

Ввод числа - C++
Помогите с заданием: нужно написать программу С++, которая с помощью операторов ввода-вывода (printf и scanf) вводит и выводит на экран...

Ввод числа Пи - C++
Помогите пожалуйста, нужно вводить число Пи с клавиатуры К примеру Пи/3 или Пи/4, не знаю как ввести

Проверка на ввод числа - C++
do { cin.clear(); cin.sync(); cout &lt;&lt; &quot;Введите N: &quot;; cin&gt;&gt;N; if(cin.fail()) cout&lt;&lt;&quot;Неверный формат!\n&quot;; ...


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

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

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