Структуры. С++

Тема в разделе "Общие вопросы по С и С++", создана пользователем ricco, 1 июл 2013.

  1. ricco

    ricco New Member

    Регистрация:
    1 июл 2013
    Сообщения:
    2
    Симпатии:
    0
    Помогите пожалуйста с программой в C++
    Вот задание:
    Описать структуру с именем NOTE, содержащую следующие поля:
    — фамилия, имя;
    — номер телефона;
    — день рождения (массив из трех чисел).
    Написать программу, выполняющую следующие действия:
    • ввод с клавиатуры данных в массив , состоящий из восьми элементов типа NOTE; записи должны быть упорядочены по трем первым цифрам номера телефона;
    • вывод на экран информации о человеке, чья фамилия введена с клавиатуры;
    • если такого нет, выдать на дисплей соответствующее сообщение.
    Помогите пожалуйста, не получается!
     
  2. rrrFer

    rrrFer Well-Known Member
    Команда форума C\C++ Team

    Регистрация:
    6 сен 2011
    Сообщения:
    1.324
    Симпатии:
    36
    что не получается?
     
  3. ricco

    ricco New Member

    Регистрация:
    1 июл 2013
    Сообщения:
    2
    Симпатии:
    0
    Код (Text):
    #include<iostream>
    #include<fstream>
    using namespace std;
    struct NOTE {
    char fio [100];
    char numOfPhone[10];
    char birhDay[10];
    };

    void Print(NOTE *Note);
    void Create(NOTE *Note);

    int main() {
    NOTE Note[3];
    Create(Note);
    Print(Note);
    }

    void Create(NOTE *Note) {
    for(int i = 0;i < 3;i++) {
    cout << endl << "FI: ";
    cin >> Note[i].fio;
    cout << endl << "Nomer telefona : ";
    cin >> Note[i].numOfPhone;
    cout << endl << "Data rozhdeniya : ";
    cin >> Note[i].birhDay;
    }
    }

    void Print(NOTE *Note) {
    for(int i = 0;i < 3;i++) {
    cout << endl << "FI : " << Note[i].fio;
    cout << endl << "Nomer telefona : " << Note[i].numOfPhone;
    cout << endl << "Data rozhdeniya : " << Note[i].birhDay;
    }
    }
    И Проблема с массивом из трех элементов.
     
  4. rrrFer

    rrrFer Well-Known Member
    Команда форума C\C++ Team

    Регистрация:
    6 сен 2011
    Сообщения:
    1.324
    Симпатии:
    36
    не совсем понятно какая проблема, у меня Ваш код работает (компилятор gcc version 4.7.2 20130108).
    Но из замечаний по коду,
    NOTE Note[3];
    но функция ожидает указатель на Note, мне кажется, что в этом случае это должно работать, но если массив был бы двумерный
    Note note[3][3];
    и функция ожидала Note** - ваш код наверняка был бы неверным. (и структуры тут не причем, читайте о массивах).

    Вобщем если у вас что-то не работает - попробуйте заменить Note note[3] на:
    Note *note = new Note[3];

    ЗЫ.
    И еще ЗАГЛАВНЫМИ буквами принято записывать имена макросов и, иногда, констант (вы пишите NOTE).
    с заглавной буквы и верблюжим регистром принято записывать имена классов, структур, енамов, ..., ... (у вас с заглавной буквы записано имя переменной Note).
     
Загрузка...
Похожие Темы - Структуры С++
  1. TSoprano
    Ответов:
    1
    Просмотров:
    1.009
  2. jula939393
    Ответов:
    1
    Просмотров:
    1.356
  3. vlada
    Ответов:
    6
    Просмотров:
    1.457
  4. Anastasia18
    Ответов:
    1
    Просмотров:
    1.205
  5. b0006
    Ответов:
    0
    Просмотров:
    1.175

Поделиться этой страницей