夜风轻轻吧 关注:1贴子:119
  • 3回复贴,共1

程序学习的花园

只看楼主收藏回复

在花园里,撒下了许多学习的种子,有空的时候,会来给感兴趣的种子浇浇水;
那些浇了水的种子,会开出记忆的花朵,
记录了学习中的练习,吐槽,心得。。。


IP属地:云南1楼2015-10-10 16:27回复


    IP属地:云南3楼2015-12-11 22:40
    回复


      IP属地:云南4楼2015-12-11 22:41
      回复
        搞了几个小时,耐心,再耐心,总算是排出了错误,顺利通过编译!!(呼~)
        /* 编写一个 java 程序,实现输出考试成绩的前三名
        *
        * 要求:
        * 1、考试成绩已保存在数组 scores 中,数组元素依次为 89,-23,64,91,119,52,73
        * 2、通过自定义方法来实现成绩排名并输出操作,将成绩数组作为参数传入
        * 3、要求判断成绩的有效性(0——100),如果成绩无效,则忽略此成绩;
        * 运行结果:
        * 考试成绩的前三名为:
        * 91
        * 89
        * 73
        /* 思路:
        * 1、对成绩数组 scores 排序(升序)
        * 2、遍历数组 scores ,若有无效成绩,使计数器 count +1 ;
        * 3、定义新数组 newarrs , 长度为 scores.length - count ;
        * 4、遍历数组 scores , 若成绩有效,则令 newArrs[] = scores[];
        * 5、倒序打印数组 newArrs[]后三位;*/
        import java.util.Arrays;
        public class HelloWorld {
        public static void main(String[] args){
        HelloWorld hello = new HelloWorld();
        int[] scores = {89,-23,64,91,119,52,73};
        hello.nums(scores);
        }
        public void nums(int[] scores){
        int i,j; // 定义循环变量
        int count = 0 ; // 定义计数器
        for ( i=0; i < scores.length ; i++){ //遍历数组 scores
        if ((scores[i]>0)&&(scores[i]<100)){
        count++; //统计有效元素的个数 } }
        // 定义新数组 newarrs ,存放scores中的有效成绩
        int[] newarrs = new int[count];
        for ( i=0,j=0; i < scores.length ; i++ ){ // 遍历数组scores,找出有效成绩
        if ((scores[i]>0)&&(scores[i]<100)){
        newarrs[j] = scores[i];
        j++; } }
        Arrays.sort(newarrs); //对数组排序,升序,最大的数在最右边
        j=0;
        for ( i= count-1 ; j < 3 ; i-- ){
        System.out.println(newarrs[i]); // 输出打印数组后三个数
        j++; } } }


        IP属地:云南5楼2015-12-25 17:28
        回复