所以我试图创建一个程序,从 void 函数返回平均值、最小值和最大值。我真的看不出代码有什么问题,我希望有人可以提供帮助。编译器没有发现任何错误或警告,但当我运行程序时,我得到“进程已退出,返回值 3221225477”。 问题似乎出在我创建的函数中。 提前致谢。
void emporeuma(double array[], int plithos, double* avg, double* max,
double* min, int* plit)
{
int j;
double sum;
avg=0;
sum=0;
*plit=plithos;
for(j=0;j<plithos-1;j++){
sum=sum + array[j];
}
*avg=sum/plithos;
*min=array[0];
*max=array[0];
for(j=1;j<plithos-1;j++)
{
if (array[j]>*max)
{
array[j]=*max;
}
if (array[j]<*min)
{
array[j]=*min;
}
}
最佳答案
avg=0;
...
*avg=sum/plithos;
使你的程序崩溃。您可能想要编写*avg = 0
。
关于c - 返回平均值、最大值、最小值的 Void 函数,并以数组和输入数量作为参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55715794/