调试过程监视到全局变量的值是正确的,输出的时候却都是0,麻烦帮忙看看。
昨天晚上看了一晚上自己的代码,没看出来问题在哪。今天早上起床又看了一遍,反复调试,在调试过程中max和min在监视器里面的最终值是98和43.
主函数输出到屏幕后却都是0。
代码如下:
#include <stdio.h>
double average,max,min;
double result(double x[]);
double result(double x[])
{
int i;
for(i=0,average=0.0;i<10;i++)
{
average+=x[i];
};
average/=i;
max=x[0];
for(i=0;i<10;i++)
{
if(x[i]>max)
{
max = x[i];
};
};
min=x[0];
for(i=0;i<10;i++)
{
if(x[i]<min)
{
min = x[i];
}
};
return average;
}
int main()
{
double array[10]={98,77,43,95,83,94,88,81,73,88.5};
printf("the average is:%lf\nthe max is:%lf\nthe min is:%lf\n",result(array),max,min);
}
烦请各位大神给点指导,问题在哪。