请大神看看平均分的算法对不对
为什么算出来的平均分是79.6?应该是78.6啊!
2015-07-13
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 | #include <stdio.h> int sum( int score[]) { int sum=0; int i; for (i=0;i<10;i++) { sum+=score[i]; } return sum; } int max( int score[]) { int max,i; max=score[0]; for (i=0;i<10;i++) { if (score[i]>max) max=score[i]; } return max; } int min( int score[]) { int min,i; min=score[0]; for (i=0;i<10;i++) { if (score[i]<min) min=score[i]; } return min; } float ave( int score[]) { float ave; int i,sum=0; for (i=0;i<10;i++) { sum+=score[i]; } ave=sum*0.1; return ave; } int dgr( int score[]) { int i,j,k,temp; for (i=0;i<10;i++) { for (j=9;j>i;j--) { if (score[j]>score[j-1]) { temp=score[j-1]; score[j-1]=score[j]; score[j]=temp; } } } printf ( "学生的考试成绩降序排序为:" ); for (k=0;k<10;k++) { printf ( "%d " ,score[k]); } } int main() { int score[10]={67,98,75,63,82,79,81,91,66,84}; printf ( "学生的考试总分为:%d分\n" ,sum(score)); printf ( "学生的考试最高分为:%d分\n" ,max(score)); printf ( "学生的考试最低分为:%d分\n" ,min(score)); printf ( "学生的考试平均分为:%0.1f分\n" ,ave(score)); dgr(score); return 0; } |
举报