从键盘读入学生成绩,找出最高分, 并输出学生成绩等级

一、题目

从键盘读入学生成绩,找出最高分,并输出学生成绩等级。

成绩>=最高分-10 等级为’A’

成绩>=最高分-20 等级为’B’

成绩>=最高分-30 等级为’C’

其余等级为’D’

二、代码

import java.util.Scanner;

public class arrayDemo {
public static void main(String[] args) {
System.out.println("请输入学生个数:");
Scanner StuNum=new Scanner(System.in);//得到一个学生的人数number
int b=StuNum.nextInt();//转换成为int类型的number
int[] score=new int[b];//将这个number作为数组的长度
for (int i=0;i<score.length;i++){
System.out.println("请输入第"+(i+1)+"个学生成绩:");
Scanner StuSco=new Scanner(System.in);
int c=StuSco.nextInt();
score[i]=c;
}//for循环将分数一个一个的赋给数组
System.out.println("这是学生的成绩:");
for (int x:score){
System.out.print(x+" ");
}//遍历一遍看有没有问题
int temp=0;
for (int i=1;i<score.length;i++){ for (int j=0;j<score.length-1;j++){
if (score[j]>score[j+1]){
temp=score[j];
score[j]=score[j+1];
score[j+1]=temp;
}
}
}//这里是将数组排序,数组中最后一个元素就是最大的number
System.out.println("\n这是排好序的学生成绩");
for (int bs:score){
System.out.print(bs+" ");
}//将排序好的数组打印一遍,看有没有问题
int m=score[b-1];//m是最高分
System.out.println("\n成绩最高的分数是:"+m);
char p;
for (int s=0;s<score.length;s++){
int r=m-score[s];//r是最高分和他的差值 if (r<=10){
p='A';
}else if (r<=20){
p='B';
}else if (r<=30){
p='C';
}else {
p='D';
}
System.out.println("学生"+(s+1)+"的成绩是"+score[s]+",他的评级是“"+p);
}
}
}

三、运行结果

四、总结

  这道题主要点在于如何找到MaxNumbr和如何给分数做评级,MaxNumber其实可以用代码中双重for(冒泡排序)中的内层for直接找到,题目并没有说明必须按照原有顺序输出,所以对原数组进行排序,排序号后最后一个元素就是MaxNumber。对分数进行评级则采用if-else的多重判断。

从键盘读入学生成绩,找出最高分, 并输出学生成绩等级(Java)的更多相关文章

  1. java从键盘输入学生成绩,找出最高分,并输出学生成绩等级。

    /*从键盘输入学生成绩,找出最高分,并输出学生成绩等级:成绩 >=最高分-10 等级为A成绩 >=最高分-20 等级为B成绩 >=最高分-30 等级为C其余为 等级为D 提示:先输入 ...

  2. 从键盘输入成绩,找出最高分,并输出学生成绩等级。成绩>=最高分-10,为A,成绩>=最高分-20,为B,成绩>=最高分-30,为C,其余等级为D

    import java.util.Scanner;public class TestStudent { public static void main(String[] args) { //从键盘获得 ...

  3. 剑指offer:1.找出数组中重复的数(java版)

    数组中重复的数:题目:找出数组中重复的数,题目描述:在一个长度为n的数组里的所有数字都在0到n-1的范围内.数组中某些数字是重复的,但不知道有几个数字是重复的.也不知道每个数字重复几次.请找出数组中任 ...

  4. SQL查询有两门以上不及格的学生及查询出全部及格的学生

    1.表结构: /*学生*/ create table student( sno int not null primary key, sname ) ); /*课程*/ create table cen ...

  5. JAVA冒泡排序/JAVA冒泡排序再找出给定数据中的最大值最小值/JAVA数组排序

    //数组中排序    int in[] = {1,6,5,8,9};    Arrays.sort(in);    for(int i=0;i<in.length;i++){       Sys ...

  6. HDU——3786找出直系亲属(DFS+回溯)

    找出直系亲属 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Sub ...

  7. hdu3786 找出直系亲属 水题

    题意:找出直系亲属Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Su ...

  8. C语言:根据形参c中指定的英文字母,按顺序打印出若干后继相邻字母,-主函数中放入一个带头节点的链表结构中,h指向链表的头节点。fun函数找出学生的最高分-使用插入排序法对字符串中的字符进行升序排序。-从文件中找到指定学号的学生数据,读入次学生数据,

    //根据形参c中指定的英文字母,按顺序打印出若干后继相邻字母,输出字母的大小与形参c一致,数量由形参d指定.例如:输入c为Y,d为4,则输出ZABC. #include <stdio.h> ...

  9. [Oracle/SQL]找出id为0的科目考试成绩及格的学生名单的四种等效SQL语句

    本文是受网文 <一次非常有意思的SQL优化经历:从30248.271s到0.001s>启发而产生的. 网文没讲创建表的数据过程,我帮他给出. 创建科目表及数据: CREATE TABLE ...

随机推荐

  1. 6. Connection has already been closed 数据库连接被关闭

    生产上Tomcat出现 Connection has already been closed.问题,但是在uat测试是好的! 遇见两次: 1.某个程序dao中执行逻辑异常复杂,有时候需要执行一分多钟, ...

  2. hdu1228双指针

    #include <iostream> #include <cstdio> #include <cstring> using namespace std; char ...

  3. H5 Funny Games All In One

    H5 Funny Games All In One H5 游戏 盖楼 游戏 https://iamkun.github.io/tower_game/ https://github.com/iamkun ...

  4. Graphviz - Graph Visualization Software 开源可视化绘图工具(visio 类)

    http://www.graphviz.org/Download_windows.php Welcome to Graphviz Available translations:  Romanian,  ...

  5. Flutter in DartPad

    Flutter in DartPad Gist Sharing https://github.com/dart-lang/dart-pad/wiki/Sharing-Guide https://gis ...

  6. Nodejs 使用 TypeScript

    安装依赖 λ yarn add typescript types/node concurrently nodemon wait-on -D 初始化一个 tsconfig.json λ ./node_m ...

  7. 人物传记Kyle Tedford:数据环境生变,银行大数据风控怎么办?

    数据是金融业务的基石,监管集中清查大数据公司,很多东西在发生根本性改变,资金方做"甩手掌柜"的好日子不会重现.那些缺乏自主风控能力的金融机构,在未来的行业竞争中,恐无以立足了.近日 ...

  8. 用铁电存储器FRAM让穿戴式设备更省电

    可穿戴设备应用中的显示屏消耗了大部分电池电力.解决方法之一是直接提高电池容量,但是大容量电池会加大尺寸和重量,对可穿戴设备不合适,尤其是在市场不断追求更小型化的新款产品时更是如此.更具挑战性的是电池技 ...

  9. C# 使用 Index 和 Range 简化集合操作

    C# 使用 Index 和 Range 简化集合操作 Intro 有的语言数组的索引值是支持负数的,表示从后向前索引,比如:arr[-1] 从 C# 8 开始,C# 支持了数组的反向 Index,和 ...

  10. Mybatis注解开发之@CacheNamespace:实现注解二级缓存的使用

    MyBatis二级缓存使用: 官方建议在service使用缓存,但是你也可以直接在mapper层缓存,这里的二级缓存就是直接在Mapper层进行缓存操作 Mybatis的二级缓存实现也十分简单,只要在 ...