用户输入到数组中。我对输出感到困惑

时间:2019-04-16 20:07:04

标签: c++ arrays input

该阵列的大多数组件均已安装到位。 但是我想知道输出中缺少什么代码来匹配我想要的操作。

我尝试搜索类似的数组编码。我想调用该函数,并为用户输入最多20个不同输入的数字。

 #define size 20

 using namespace std;


 int i;

 void Input(int student[]) {
     for(int i = 0; i < size; i++)
         cout << "Enter The Marks of Subject 2 of student no " << i + 1 << " ";
     cin >> student[i];
}

void display(int student[]) {
    for(int i = 0; i < size; i++)
        cout << student[i];
}

int main() {
    int student[size];
    Input(student );
    display(student);

    return 0;

1 个答案:

答案 0 :(得分:2)

在您的Input函数中:

void Input(int student[]) {
     for(int i = 0; i < size; i++)
         cout << "Enter The Marks of Subject 2 of student no " << i + 1 << " ";
     cin >> student[i];
}

您没有使用方括号,因此cin >> student[i];在循环之外。 i循环中的for不在范围内,因此您在此处使用i

int i;

从不提供值,这会导致未定义的行为。添加括号:

void Input(int student[]) {
     for(int i = 0; i < size; i++) {
         cout << "Enter The Marks of Subject 2 of student no " << i + 1 << " ";
         cin >> student[i];
     }
}