ввод значений в массив массива + распечатка

0

Я получил проблемный домен. Ввод в массив структур C++

У класса 5 учеников. Вам необходимо написать программу, чтобы принять следующую информацию от пользователя.

First Name
Last Name
Age
Major
GPA

Вся эта информация должна быть получена от пользователя и сохранена в массиве. После заполнения массива распечатайте всю эту информацию для каждого учащегося.

Для выполнения этого проекта вам может потребоваться структура пользователя, массивы и некоторые циклы. Убедитесь, что для хранения информации используются соответствующие типы данных. Принимая GPA, вы должны убедиться, что GPA больше или равно 2 и меньше или равно 4. Если GPA учащегося выходит за этот диапазон, попросите пользователя снова ввести GPA, предоставив ему пределы.


Мне нужно знать, как вводить значения в массив struct, а затем распечатывать их. Вот что я до сих пор. Любая помощь будет оценена по достоинству.

#include <iostream>
#include <string>

using namespace std;

typedef struct
{
    string firstName;
    string lastName;
    int age;
    string major;
    float GPA;
} student;


int main ()
{
    //Variable declaration
    string fnInput;
    string lnInput;
    int ageInput;
    string majorInput;
    float GPAInput;

    student students[4];

    cout << "Enter the first name:  " ;
    cin >> fnInput ;
    cout << "Enter the last name:   " ;
    cin >> lnInput ;
    cout << "Enter the age:   ";
    cin >> ageInput ;
    cout << "Enter the major:   " ;
    cin >> majorInput;
    cout << "Enter the GPA:    ";
    cin >> GPAInput ;

    cout << fnInput << lnInput << ageInput << majorInput << GPAInput ;

    /*students[0].firstName = fnInput;*/
}
  • 0
    В чем проблема у вас? Не просто сбросьте код и скажите «исправить это».
Теги:
arrays
struct

1 ответ

1

Чтобы вводить значения в массив struct, вам не нужны временные переменные, просто сохраните входные значения напрямую:

std::cout << "Enter the first name:  " ;
std::cin >> students[0].firstName;
std::cout << "Enter the age:   ";
std::cin >> students[0].age;

Результат аналогичен:

std::cout << students[0].firstName;;
std::cout << students[0].age;

Ещё вопросы

Сообщество Overcoder
Наверх
Меню