使用数组的总薪酬(C ++)

时间:2015-11-19 06:34:17

标签: c++ arrays

我正在编写一个代码来计算使用数组的七名员工的总薪酬。这是我到目前为止所拥有的

#include <iostream>
#include <iomanip>
using namespace std;

int main ()
{
//Set all constants and variables
const int SIZE = 7;             //Size of all arrays
int emID[SIZE] = {1234, 4563, 8765, 4568, 9867, 9235, 7684};

double  Hours[SIZE],
        Rate[SIZE],
        Gross[SIZE];

int index;

Gross[index] = (Hours[index] * Rate[index]);

//Explain Program
cout << "This program calculates an employees gross pay\n";

for (Hours[index];index <= 6; index++)
{
    cout << "How many hours did employee " << emID[index] << " work?\n";
    cin >> Hours[index];
}

for (Rate[index]; index <= 6; index++)
{
    cout << "Enter the pay rate for " << emID[index] << endl;
    cin >> Rate[index];
}

for (Gross[index]; index <=6 ; index++)
{
    cout << "The gross pay for " << emID[index] << " is " << Hours[index] * Rate[index];
}

}

不幸的是,程序在第一个“for”循环后终止。有什么建议吗?

1 个答案:

答案 0 :(得分:2)

您的代码中似乎有一些错误,我在下面指出。

  • index是单元化的,您使用它的方式会导致未定义的行为。我认为你的意思是初始化为0.

  • 您应该在index循环之间将0的值重置为for。目前,您将在第一个for循环中进行迭代。之后,由于index将为> 6,因此您的代码不会执行其他两个for循环。

  • for循环声明中的第一个术语是错误的。我想你打算在那里宣布index = 0。如果没有,你应该把它留空。

  • 您计算Gross[index]的开头附近的行是错误且多余的。