为了账号安全,请及时绑定邮箱和手机立即绑定

调用函数数输出数组中的平均数和中位数问题

调用函数数输出数组中的平均数和中位数问题

C C++
Leo也叫做夹子 2016-11-19 18:43:48
#include<stdio.h>#define N 10void 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,求解
查看完整描述

1 回答

已采纳
?
这都不会

TA贡献72条经验 获得超92个赞

printf("aver=%d\n",averofscore(score));

看你main函数里这句话,能输出浮点数才怪了。算平均值那个函数应该是没错的。

另外搞不清楚你到底是要求众数还是中位数。

查看完整回答
1 反对 回复 2016-11-20
  • 1 回答
  • 0 关注
  • 1760 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信