xzdjsnb 2022-03-18 22:57 采纳率: 92.2%
浏览 44
已结题

为什么不能输出了,你们的打开能输出吗?还是说我的电脑有问题。


import java.util.Scanner;

public class ArrayDem {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入学生个数: ");
        int number = scanner.nextInt();
        
        int[] scores = new int[number];
        System.out.println("请输入" + number+ "个学生成绩: ");
        for(int i = 0;i <= scores.length;i++) {
            scores[i] = scanner.nextInt();
        }
            int maxScore = 0;
            for(int i = 0;i < scores.length;i++) {
               if(scores[i] > maxScore) {
                   maxScore = scores[i];       
               }
              
   }
              char level;
              for(int i = 0;i < scores.length;i++) {
                  if(maxScore - scores[i] <= 10) {
                      level = 'A';
                  }else if(maxScore - scores[i] <= 20) {
                      level = 'B';
                  }else if(maxScore - scores[i] <= 30) {
                      level = 'C';
                  }else  {
                      level = 'D';
            }
                  System.out.println("student" + i + "score is" + scores[i] + "grade is" + level);
        }
    }
        
}
  • 写回答

3条回答 默认 最新

  • Code_流苏 C/C++领域优质创作者 2022-03-18 23:07
    关注

    将 for(int i = 0;i <= scores.length;i++)改为 for(int i = 0;i < scores.length;i++),否则的话会需要多输入一个数据,才能输出

     
    import java.util.Scanner;
     
    public class ArrayDem {
        public static void main(String[] args) {
            Scanner scanner = new Scanner(System.in);
            System.out.println("请输入学生个数: ");
            int number = scanner.nextInt();
            
            int[] scores = new int[number];
            System.out.println("请输入" + number+ "个学生成绩: ");
            for(int i = 0;i < scores.length;i++) {
                scores[i] = scanner.nextInt();
            }
                int maxScore = 0;
                for(int i = 0;i < scores.length;i++) {
                   if(scores[i] > maxScore) {
                       maxScore = scores[i];       
                   }
                  
       }
                  char level;
                  for(int i = 0;i < scores.length;i++) {
                      if(maxScore - scores[i] <= 10) {
                          level = 'A';
                      }else if(maxScore - scores[i] <= 20) {
                          level = 'B';
                      }else if(maxScore - scores[i] <= 30) {
                          level = 'C';
                      }else  {
                          level = 'D';
                }
                      System.out.println("student" + i + "score is" + scores[i] + "grade is" + level);
            }
        }
            
    }
    
    

    希望对题主有所帮助!可以的话,帮忙点个采纳!

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 3月26日
  • 已采纳回答 3月18日
  • 创建了问题 3月18日

悬赏问题

  • ¥100 set_link_state
  • ¥15 虚幻5 UE美术毛发渲染
  • ¥15 CVRP 图论 物流运输优化
  • ¥15 Tableau online 嵌入ppt失败
  • ¥100 支付宝网页转账系统不识别账号
  • ¥15 基于单片机的靶位控制系统
  • ¥15 真我手机蓝牙传输进度消息被关闭了,怎么打开?(关键词-消息通知)
  • ¥15 装 pytorch 的时候出了好多问题,遇到这种情况怎么处理?
  • ¥20 IOS游览器某宝手机网页版自动立即购买JavaScript脚本
  • ¥15 手机接入宽带网线,如何释放宽带全部速度