它一直要求我在我的 int 数组中的 Double 之前提供一个主要表达式,我不知道该怎么做。我明天有期中考试啊,这伤害了我的大脑。所有其他输入都会有所帮助,谢谢 :)
#include <iostream>
#include <iomanip>
using namespace std;
void get_input(double array[50], int& sizearray1)
{
cout << "How many doubles do you wish to add?" << endl;
cin >> sizearray1;
while(sizearray1 < 1 || sizearray1 > 50) {
cout << "Error: That is an invalid number! You must enter a value between 1 and 50.\nHow many doubles do you wish to add?" << endl;
cin >> sizearray1;
}
for(int n=1;n<sizearray1;n++){
cout << "Enter Double " << n << endl;
cin >> array[n];
}
}
double calcSum(double array[50],int sizearray1)
{
int sum
cout << "The sum is ";
for(n=1,n<sizearray1,n++){
sum += array[n]
}
cout << sum << endl;
}
void printArray(double c[],int sizearray1)
{
cout << "The array contains:\n";
for(int n=1;n<sizearray1;n++){
cout << setprecision(2) << showpoint << fixed << c[n] << " ";
}
calcSum(double array[50],int sizearray1);
}
int main()
{
double array1[50];
int sizearray1 = 0;
get_input(double array[50],int sizearray1);
printArray(double array[50],int sizearray1);
最佳答案
首先,我将从一些错误开始,因为此代码无法编译。决不。
您在 int sum
处缺少分号第 21 行。第 23 行的 for 循环使用逗号而不是分号。您正在使用 undefined variable n = 1
在同一个循环中,你必须在这样做之前声明它for(n=1,n<sizearray1,n++)
.同样在第 24 行的同一个 for 循环中,您忘记了另一个分号 sum += array[n]
.
回到你的问题:
你不能给函数一个类型参数,你实际上会尝试在那里声明一个变量。另外请不要声明这样的函数 double calcSum (double array[50], int sizearray1)
因为这真的不是你想要的......用这个代替double calcSum (double array[/*Nothing here*/], int sizearray1)
.
请检查您的整个代码并修复所有错误。这是我的修复。当然不行,你的代码有点乱,检查所有函数并给它们正确的参数。
#include <iostream>
#include <iomanip>
using namespace std;
void get_input (double array[], int& sizearray1)
{
cout << "How many doubles do you wish to add?" << endl;
cin >> sizearray1;
while (sizearray1 < 1 || sizearray1 > 50)
{
cout << "Error: That is an invalid number! You must enter a value between 1 and 50.\nHow many doubles do you wish to add?" << endl;
cin >> sizearray1;
}
for (int n = 1; n < sizearray1; n++)
{
cout << "Enter Double " << n << endl;
cin >> array[n];
}
}
double calcSum (double array[], int sizearray1)
{
int sum;
cout << "The sum is ";
for (int n = 1; n < sizearray1; n++)
{
sum += array[n];
}
cout << sum << endl;
}
void printArray (double c[], int sizearray1)
{
cout << "The array contains:\n";
for (int n = 1; n < sizearray1; n++)
{
cout << setprecision(2) << showpoint << fixed << c[n] << " ";
}
calcSum (array[50], sizearray1); //This still can't work, the variable "array" has not been declared
}
int main()
{
double array1[50];
int sizearray1 = 0;
get_input (array[50], sizearray1); //Again "array" has not been declared
printArray (array[50], sizearray1); //Again "array" has not been declared
return EXIT_SUCCESS;
}
关于c++ - 我的数组中 Double 之前的主要表达式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19805672/