输入值到struct array + print out

时间:2014-02-23 06:29:31

标签: c++ arrays struct

我遇到了问题域名。输入结构数组C ++

班级有5名学生。您需要编写程序以接受用户的以下信息。

First Name
Last Name
Age
Major
GPA

所有这些信息必须从用户处获取并存储在数组中。填充数组后,为每个学生打印所有这些信息。

对于执行此项目,您可能希望使用struct,arrays和一些循环。确保使用正确的数据类型来存储信息。在接受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;*/
}

1 个答案:

答案 0 :(得分: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;