我没有数组,我确定有更简单的方法来制作这个程序,但我必须按照老师的方式去做,我迷路了。
这是分配:
我不明白我应该如何处理这些数组。到目前为止我看到的最令人困惑的事情。 我想要的是如何编程这些数组或如何编程数组期间的指南或帮助。我没有要求为我做其余的工作,我已经知道如何做大部分工作,只是我喜欢知道该怎么做的数组。
这是我目前的计划:
#include<iostream>
using namespace std;
void getPoints(int pPossible[], double pEarned[], int numItems, int limit);
int sumArray(double
void getpoints(int pPossible[], double pEarned[], int numItems, int limit)
{
int count;
while (limit == limit)
{
cout << "Input grade points for a category in the gradebook: " << endl
<< "How many items available in the category?: ";
cin >> numItems;
cout << endl;
if(numbItems > limit)
{
cout << "The Value exceeds the maximum number of items." << endl;
continue;
}
break;
}
count=1;
for(count=1; count<numItems; count++)
cout << "Enter points then points possible for Item " << count << ": ";
cin << pEarned[count] << pPossible[count];
return 0;
}
答案 0 :(得分:0)
C ++数组索引从零开始,因此您应该在for
循环中使用零作为初始值。此外,你错过了for
循环体的大括号;实际上,它只会运行cout
行numItem-1次和cin
行。
另一件事:for的cin行中的运算符应为>>
,而不是<<
。你想在这里输入,而不是输出。
最后,就像@ebyrob所说的那样,使numItems成为一个引用参数(调用者使用指针会更清楚,但是赋值要求引用参数)。
void getpoints(int pPossible[], double pEarned[], int& numItems, int limit)
{
//Read number of items
while (true)
{
cout << "Input grade points for a category in the gradebook: " << endl
<< "How many items available in the category?: ";
cin >> numItems;
cout << endl;
if(numItems >= limit)
{
cout << "The Value exceeds the maximum number of items." << endl;
continue;
}
break;
}
//Read earned and possible for each item
for(int count=0; count<numItems; count++)
{
cout << "Enter points then points possible for Item " << count << ": ";
cin >> pEarned[count] >> pPossible[count];
}
return 0;
}