【发布时间】:2019-04-08 22:59:58
【问题描述】:
我的编译器有问题,我一定有一些逻辑错误(C语言)
我想要一个 void 函数,它可以给我最高价格、最低价格和最多 100 个价格的表的平均值。如果用户给price=-1我希望程序结束!
这是我的代码:
#include <stdio.h>
void function(float pin[],int j,float *min,float *max,float *mo,int cnt);
int main()
{
int i=0,count=0;
float prc[100],mo;
for(i=0;i<=99;i++)
{
printf("Enter price:");
scanf("%f",&prc[i]);
if(prc[i]==-1)
{
break;
}
count++;
}
int min=prc[0];
int max=prc[0];
void function(float prc,int i,float *min,float *max,float *mo,int count);
printf("Minimum price is:%f Maximum price is:%f and Mo is:%f",min,max,mo);
return 0;
}
void function(float pin[],int j,float *min,float *max,float *mo,int cnt)
{
float sum;
for(j=0;j<=cnt;j++)
{
if(pin[j]<*min)
{
min=pin[j];
}
if(pin[j]>*max)
{
*max=pin[j];
}
sum=+pin[j];
}
*mo=sum/j;
}
【问题讨论】:
-
相对于您的预期,它在做什么/不做什么?
-
当您在其他地方处理
float值时,为什么要定义int min和int max? -
你声明了两次函数,但你从未调用它。 main() 中的声明应该是带有实际参数且没有返回类型规范的调用。复制和粘贴错误?
-
第二个声明似乎是试图调用它,但您还必须将
int min, max更改为float min, max,并使用... &min, &max, ...参数调用该函数。 -
请改进标题。如所写,标题没有提供有关问题的信息,这意味着其他有相同问题的人将无法找到它。标题“我正在尝试使此代码正常工作”适用于该站点上的几乎所有问题。 (你也忘了问一个问题。)