关于JAVA程序流程图的编写

我写了如下一个JAVA程序。importjava.util.Arrays;publicclassGetScore{publicstaticvoidmain(String[... 我写了如下一个JAVA程序。import java.util.Arrays;
public class GetScore {
public static void main(String[] args) {
float[] score={8.5f,9.5f,8,7,9,8.7f,6.8f,10,7.9f,8.9f};
float sum=0;
float avg=0;
Arrays.sort(score);
for(int j=1;j<score.length-1;j++){
sum+=score[j];
}
avg=sum/score.length-2;
System.out.println("选手的最终得分为:"+avg);
}
}现在要画出该程序的流程图,望高手指点,特别是,ARRAYS.SORT对数组排序的算法是什么?
展开
 我来答
匿名用户
2013-09-21
展开全部
流程图如下:首先,你的JAVA程序是用来进行选手评分的。为保证公正性,所以一般都会以去掉一个最高分,在去掉一个最低分,求和算平均值的方法来算的。float[] score={8.5f,9.5f,8,7,9,8.7f,6.8f,10,7.9f,8.9f};score数组中,即为各个评委给出的的结果。通过Arrays.sort(score);将数组由小到达排序,即为:float[] score={6.8f,7.0f,7.9f,8.0f,8.5f,8.7f,8.9f,9.0f,9.5f,10};之后用for循环求和,在求和过程中为去掉最低分,所以从索引j=1开始累加(数组索引由0开始)为去掉最高分,加到索引j=score.length-1(数组个数-1)。此时for循环后,sum即为去掉最高分和最低分的求和了。之后的事情,相信你就明白了,我就不多说了。
匿名用户
2013-09-21
展开全部
你求的是平均分为什么还要对数组进行排序啊!!直接遍历数组累加求和之后求平均就可以了啊!要是说array.sort()方法是对数组排序的! public static void sort(float[] a) {//传入一个数组
sort2(a, 0, a.length);//数组执行sort2方法:下面的为sort2方法
}private static void sort2(float a[], int fromIndex, int toIndex) {
final int NEG_ZERO_BITS = Float.floatToIntBits(-0.0f);
int numNegZeros = 0;
int i = fromIndex, n = toIndex;
while(i < n) {
if (a[i] != a[i]) {
float swap = a[i];
a[i] = a[--n];
a[n] = swap;
} else {
if (a[i]==0 && Float.floatToIntBits(a[i])==NEG_ZERO_BITS) {
a[i] = 0.0f;
numNegZeros++;
}
i++;
}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2013-09-21
展开全部
JAVA/J2EE(软件工程师)
Java/J2EE(高级精讲班)
Ruby/Rails(软件工程师班)详情请见本校官网www.aisiming.com
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式