运行后值好像溢出,用的devc++,求解

2024-12-04 08:11:23
推荐回答(2个)
回答1:

#include 
int k=0;
int fun(int score[],int m,int below[])
{
int i;
double average=0;
for(i=0;i{
average+=score[i];
}
average/=m;//求平均值
i=0;//必须从零开始。
while(score[i]{
below[k]=score[i];
k++;
i++;
}
return k;
}

int main()
{
/*1: 第1题 m个人的成绩存放在score数组中,请编写函数fun,它的功能是:
将低于平均分的人作为函数值返回,将低于平均分的分数放在below所指定的函数中。*/

int score[]={1,2,3,4};
int below[6];
printf("%d\n",fun(score,3,below));

}

回答2:

int fun(int *score,int m,int *below)
{
    float average=0.0;
    int numberOfPpl=0;
    for(int i=0;i    average/=(float)m;
    for(int i=0;i        if((float)score[i]        {
            below[numberOfPpl]=score[i];
            numberOfPpl++;
         }
    return numberOfPpl;
}