日期:2014-05-20  浏览次数:20715 次

急急!一道程序题, 请各位帮帮忙!!散分!!!!
用Java编写程序:
利用随机数产生1000个0~100之间的考试分数,将其存入一个文本文件中,然后程序从这个文件中读取这1000个考试分数,统计其中各分数段(A[90,100],B[80,90), C[70,80), D[60,70), F[0,60))的人数、所占百分比,平均分。
提示:产生随机数可以用Random类(可以产生0—100之间的任意数)





------解决方案--------------------
你都知道怎么做了啊,哈哈
------解决方案--------------------
自己做才能有提高
------解决方案--------------------
Random类

数组

你都知道了,怎么不动下脑勒!

欢迎加入 JAVA交流群 72923840
------解决方案--------------------
Random类

数组

你都知道了,怎么不动下脑勒!

欢迎加入 JAVA交流群 72923840
------解决方案--------------------
先产生1000个0-100随机数,遍历一遍把他们分组统计个数,直接就算出人数、所占百分比,平均分了.
提示已经很明白了.
LZ应该自己写代码. 

------解决方案--------------------
给你提示啊:
Java code

    //定义几个变量分别代表5个成绩段的人数
    int a = 0, b = 0, c = 0, d = 0, e = 0;
    //产生随机数: 
    Random rnd = new Random();
    int i = rnd.nextInt(101); //产生0~100之间的随机数
    //往文件里面写可以使用DataOutputStream,       >
                                            列表中为什么会多个空格!
                                        </a>
                                        
                                        <span class="color_silver">[Java][J2SE / 基础类]</span>
                                    </td>

------解决方案--------------------
探讨
给你提示啊:
Java code

//定义几个变量分别代表5个成绩段的人数
int a = 0, b = 0, c = 0, d = 0, e = 0;
//产生随机数:
Random rnd = new Random();
int i = rnd.nextInt(101); //产生0~100之间的随机数
//往文件里面写可以使用DataOutputStream,一个一个挨着写
DataOutputStream dos = new DataOutputStream( new FileOutputStream("file name"));
dos.writeInt(i);
//读取的时候用…

------解决方案--------------------
我再详细地给你一个参考的思路,代码还是要自己写哈!

Java code
首先,利用file类新建个文本文件,

利用random函数随机出100个函数,可以写个循环,循环100次,

循环体里写文件(需要用try-catch),简单点可以每次写一行,一行就一个数字,这样,后面读的时候一行一行读也方便。。

100个随机数都在文本里后,再新建一个100个长度的int数组和5个int数组(分别存放A-F段的数据),

利用读文件的readinLine()函数读出100个随机数,先转换成数字,再判断数字大小分别放在A-F的INT数组里(SWITCH)

"统计其中各分数段(A[90,100],B[80,90), C[70,80), D[60,70), F[0,60))的人数、所占百分比,平均分"

这个根据数组就可以计算了。

------解决方案--------------------
mark
------解决方案--------------------
自己先写一点嘛,如果有错误可以问,自己动手会有很多收获的。
------解决方案--------------------

------解决方案--------------------
首先用Random类随机产生一个数字,然后把它存入文本文件中。

在for循环1000便上面的过程


...
------解决方案--------------------
Java code



package com.train.first;

import java.util.ArrayList;
import java.util.List;

public class Test
{
    private static final int AMOUNT = 1000;
    
    private static List<Group> groups;
    
    private static int[] scores = new int[AMOUNT];
    
    /**
     * 初始化分组信息
     * @param group
     */
    private static void initGroup()
    {
        groups = new ArrayList<Group>();
        groups.add(new Group("ALL"));
        groups.add(new Group("A"));
        groups.add(new Group("B"));
        groups.add(new Group("C"));
        groups.add(new Group("D"));
        groups.add(new Group("F"));
    }
    
    /**
     * 根据分数进行分组
     * @param score
     */
    private static void doGroup(int score)
    {
        groups.get(0).add(score);
        
        if (score >= 90)
        {
            groups.get(1).add(score);
        }
        else if (score >= 80)
        {
            groups.get(2).add(score);
        }
        else if (score >= 70)
        {
            groups.get(3).add