#include<stdio.h>
#define N 10
void intoscore(int score[]);
void sortscore(int score[],int count[]);
float averofscore(int score[]);
int modeofscore(int count[]);
int main()
{
int score[N]={0},count[11]={0};
intoscore(score);
sortscore(score,count);
printf("aver=%d\n",averofscore(score));
printf("mode=%d",modeofscore(score));
}
void intoscore(int score[])
{
int i;
for(i=0;i<N;i++)
{
printf("please input your score:");
scanf("%d",&score[i]);
}
}
void sortscore(int score[],int count[])
{
int i;
for(i=0;i<N;i++)
{
switch(score[i])
{
case 1:count[1]++;break;
case 2:count[2]++;break;
case 3:count[3]++;break;
case 4:count[4]++;break;
case 5:count[5]++;break;
case 6:count[6]++;break;
case 7:count[7]++;break;
case 8:count[8]++;break;
case 9:count[9]++;break;
case 10:count[10]++;break;
}
}
}
float averofscore(int score[])
{
int sum=0;int i;
for(i=0;i<N;i++)
{
sum+=score[i];
}
return (float)sum/N;
}
int modeofscore(int count[])
{
int max=count[1];int i,mode;
for(i=1;i<N;i++)
{
if(max<count[i])
{
max=count[i];
mode=i;
}
}
return mode;
}
不知为何调用的averofscore求平均值函数和modeofscore求众数函数都没有输出我想要的结果,调试了一下发现sum的值不是我所定义的0,求解
这都不会