成绩查询系统
来源:互联网 发布:迅雷赚钱宝 网络硬盘 编辑:程序博客网 时间:2024/04/27 17:08
数学老师小y 想写一个成绩查询系统,包含如下指令:
insert [name] [score],向系统中插入一条信息,表示名字为name的学生的数学成绩为score。
find [name],表示查找名字为name的学生的数学成绩。
注意有些同学可能会为了刷分多次选课,查询的时候给出最大成绩即可。学生的名字是由小写字母组成。成绩是一个 0…1000 \ldots 1000…100 的整数。
老师找到你,想你帮他完成这个系统。
输入格式
输入若干行,每行都是insert [name] [score]或者find [name]的形式,或一行end表示输入结束。输入行数不大于 100010001000,每个学生名字长度不大于 202020 个字符。
输出格式
对于每个查询,输出查询的学生的最高成绩,如果系统中不存在该学生,输出 ?1-1?1。
样例输入
insert zhangsan 90
insert lisi 78
insert xiaoming 86
find xiaoming
find jack
end
样例输出
86
方法二:普通循环
insert [name] [score],向系统中插入一条信息,表示名字为name的学生的数学成绩为score。
find [name],表示查找名字为name的学生的数学成绩。
注意有些同学可能会为了刷分多次选课,查询的时候给出最大成绩即可。学生的名字是由小写字母组成。成绩是一个 0…1000 \ldots 1000…100 的整数。
老师找到你,想你帮他完成这个系统。
输入格式
输入若干行,每行都是insert [name] [score]或者find [name]的形式,或一行end表示输入结束。输入行数不大于 100010001000,每个学生名字长度不大于 202020 个字符。
输出格式
对于每个查询,输出查询的学生的最高成绩,如果系统中不存在该学生,输出 ?1-1?1。
样例输入
insert zhangsan 90
insert lisi 78
insert xiaoming 86
find xiaoming
find jack
end
样例输出
86
-1
这个题最好的方法应该就是用map的集合框架了。不过用普通的循环条件也是比较简单的。
方法一:map集合框架
static Scanner sc=new Scanner(System.in);static int flag=0;public static void main(String[] args){Test08_2 test=new Test08_2();while(true){if(flag==1){break;}test.start();}}Map a=new LinkedHashMap<String,Integer>();public void start(){String string=sc.next();if(string.equals("insert")){String num1=sc.next();int num2=sc.nextInt();if(a.containsKey(num1)){int a2=(int) a.get(num1);num2=Math.max(a2, num2);}a.put(num1, num2);}else{if(string.equals("find")){String a2=sc.next();if(a.containsKey(a2)){System.out.println(a.get(a2));}else{System.out.println(-1);}}else{flag=1;}}}
方法二:普通循环
public static void main(String[] args){Scanner sc=new Scanner(System.in);String[] i=new String[1000];int[] i1=new int[1000];int x=0;while(true){int max=0,flag=0;String str1=sc.next();if(str1.equals("insert")){i[x]=sc.next();i1[x]=sc.nextInt();x++;}if(str1.equals("find")){String str2=sc.next();for(int y=0;y<1000;y++){if(i[y]!=null&&i[y].equals(str2)){if(i1[y]>max){max=i1[y];flag=1;}}}for(int y1=0;y1<1000;y1++){if(flag==1){System.out.println(max);break;}else if(flag==0){if(i[y1]==null){System.out.println(-1);break;}}}}max=0; flag=0;}}
0 0
- 简易成绩查询系统
- 简易成绩查询系统
- 成绩查询系统
- 成绩查询系统
- 成绩查询系统(JAVA)
- 学生成绩管理查询系统
- 进入成绩查询系统改成绩(绝对原创)
- 学生成绩储存及查询系统二
- 正方系统成绩查询详细技术贴
- gui写成绩查询系统笔记
- [优秀作品]广西师范学院艺术成绩查询系统
- 成绩登记与查询系统App
- 北理工本科生管理系统成绩查询爬虫
- switch-case_成绩等级查询系统
- 计蒜客蓝桥杯模拟赛5 成绩查询系统
- 期末课程设计—学生成绩查询系统
- 查询成绩
- 查询成绩
- 在Eclipse上配置Opencv
- mt,sgd,gd含义
- C++利用反射和简单工厂模式实现业务模块解耦
- Git使用详解
- 备赛全国阳光健身健美大赛训练记录(粗略)
- 成绩查询系统
- 树,森林,二叉树转换
- 8种基本类型所占字节数及取值范围分析
- SpringMVC整合Swagger
- Flask--学习笔记-注册
- 【win32】计算机图形学——中点法画线和八分法画圆
- 历届试题 打印十字图
- 我爱你美丽的姑娘
- 装箱问题(递归)