import java.util.Scanner;
public class Main {public static void avgst(double ui[],String st) {//函数avgst用来计算某一学生所有课程的平均成绩double sum = 0;int k;for (k = 0; k < 5; k++)sum += ui[k];//将该学生所有课程的成绩加起来System.out.printf(st+"的平均分是:%.2f\n" ,sum/5);}public static void avgcou(double qw[][], int w,String stcou) {//函数avgcou用来计算某一课程所有学生的平均成绩double sum = 0;int k;for (k = 0; k < 6; k++)sum += qw[k][w];//将这门课所有学生的成绩加起来System.out.printf(stcou+"的平均分是:%.2f\n" ,sum/6);}
public static void sort(String[] st,String[] cou,double grate[][],int c){//函数sort用来比较所有学生某一门课程的成绩,并将每个学生的姓名,排名,成绩按顺序输出int i,j,k=1;double min=999;for(i=0;i<6;i++)if(grate[i][c]<min)min=grate[i][c];//先找出所有学生此门课的最低成绩System.out.println("名次\t姓名 \t"+cou[c]);for(i=(int)min;i<101;i++){for(j=0;j<6;j++){if(grate[j][c]==i){System.out.printf(k+"  \t"+st[j]+"  \t%.0f\n",grate[j][c]);//从最小值加起遇到有学生成绩相同则输出,加空格和\t的原因是为了在其输出时更像一个表格整齐一点k++;//用k来表示他们的排名}}}
}public static void main(String[] args) {String[] student = new String[6];//创建字符串数组student用来存放学生姓名String command, stcou, st, cou;int i, j, flag = 0, s = -1, c = -1;String[] courses = {"C", "Java", "mySQL", "Linux", "HTML"};//创建字符串数组courses用来存放科目名称Scanner sc = new Scanner(System.in);for (i = 0; i < 6; i++) student[i] = sc.next();//依次输入6个学生的姓名double[][] ch = new double[6][5];//建立一个二维数组用来存放所有学生所有课程的成绩for (i = 0; i < 6; i++)for (j = 0; j < 5; j++)ch[i][j] = sc.nextDouble();//按顺序输入每个学生所有课程的成绩while (true) {//当输入exit时才让程序结束运行flag=0;s=-1;c=-1;//循环每次运行时令flag,s,c都重置,避免其他影响System.out.println("请输入命令:");command = sc.next();//在此处输入要让程序执行的命令if(command.equals("exit"))break;//当输入exit时退出循环并结束程序//运用equals函数来比较字符串是否相等,从而判断应该执行哪一个命令if (command.equals("avg")) {//此处为执行avg即求平均成绩的命令stcou = sc.next();for (i = 0; i < 6; i++) {if (student[i].equals(stcou)) {flag = 1;s = i;}}//先通过此循环判断命令后输入的是哪个学生的姓名if (flag == 0)//当命令后的字符串不为学生姓名时进入for (i = 0; i < 5; i++) {if (courses[i].equals(stcou)) {flag = 2;c = i;}}//判断命令后输入的是否是课程名称if (flag == 0) System.out.println("你输入的既不是课程名,也不是学生名");//若此时flag仍为0,则命令后的字符串输入错误else if (flag == 1)//flag=1,统计某位学生的所有课程成绩avgst(ch[s], student[s]);else if (flag == 2)//flag=2,统计所有学生某门课程的成绩avgcou(ch, c, stcou);} else if (command.equals("get")) {//此处执行get,即获取某位学生某门课程的成绩st = sc.next();//输入学生名cou = sc.next();//输入课程名for (i = 0; i < 6; i++) {if (student[i].equals(st))s = i;}//寻找输入的学生名并利用s记录学生在其字符串数组中的编号for (i = 0; i < 5; i++) {if (courses[i].equals(cou))c = i;}//寻找输入的课程名并利用c记录课程在其字符串数组中的编号if (s == -1) System.out.println("没有" + st + "这个人");//找不到学生输出没有输入的人名else if (c == -1) System.out.println(st + "没有" + cou + "这门课程");//找到学生找不到课程输出此人没有这门课程if (s != -1 && c != -1)System.out.printf(student[s] + "的" + courses[c] + "成绩是:%.0f\n" ,ch[s][c]);//如果找到学生和成绩就输出此人的本课成绩是多少} else if (command.equals("sort")) {//如果命令是sort,就将某门课程所有学生的成绩排序并输出cou = sc.next();//输入要排名的课程名for (i = 0; i < 5; i++)if (courses[i].equals(cou))c = i;//记录课程在其字符串数组中的编号if (c == -1) System.out.println("没有这门课程");//找不到输入的课程就输出elsesort(student, courses, ch, c);//否则就执行前面写的sort函数}else System.out.println("你输入的不是命令");//如果输入的不是已保存的命令,输出此句并跳回循环第一步}System.out.println("退出查询系统!byebye!");//此时已输入exit,输出此句并结束程序}
}
  总结:此学生成绩录入系统是按照某本书上的基础文章写的,所以可能有些过于基础,也没什么用,只有学生名字和学生成绩是自己输入的,而且学生人数和课程门数也有点少。其次,某些部分的算法也有点问题,又慢又麻烦。另一方面来说,命令也有点少了,所以相当于一篇Java基础语法的应用,希望能对看这篇文章的你有所帮助,注释基本都有,应该也不难理解,最后,谢谢浏览。

简单的学生成绩录入查询系统相关推荐

  1. c语言高考成绩录入,c#小型学生成绩录入查询系统

    技校网专门为您推荐的类似问题答案 问题1: c,编写小型学生成绩管理系统 我不 晓得? 问题2: 怎么用c语言编写一个学生成绩管理系统啊 C语言课程设计报告-------学生成绩简单管理程序 一.系统 ...

  2. 录入查询学生成绩C语言,学生成绩录入查询系统C语言程序

    #include #include #include #define M 50 /********************************全局变量*********************** ...

  3. 成绩的录入c语言,学生成绩录入查询系统C语言程序

    #include #include #include #define M 50 /********************************全局变量*********************** ...

  4. 提高教育效率:教师如何制作智能学生成绩在线查询系统?

    教师是教育领域中不可或缺的重要角色,他们肩负着传授知识和培养学生能力的重任.学校则是培养未来人才的摇篮,也是学生成长的重要场所.在现代信息化时代,学校对于学生成绩在线查询系统的需求日益增长.这一工具不 ...

  5. 公众号学生成绩管理查询系统

    在工作学习中,我们经常会遇到公众号学生成绩管理查询系统 这样的问题.李白说过:天生我材必有用.因此,面对公众号学生成绩管理查询系统 我们应该有努力探索的精神.不读书就没有真正的学问,没有也不可能有欣赏 ...

  6. 简单的学生成绩查询web系统

    实验内容:基于 JSP+Mysql 做一个简单的学生成绩查询web系统. 文章目录 一.Java Web 1. B/S系统 2.主要框架 3.servlet 4.Web服务器 Tomcat 5.JSP ...

  7. JSP+Mysql 做一个简单的学生成绩查询web系统

    IDEA基于JSP+Mysql 做一个简单的学生成绩查询web系统 目录 一.相关软件的下载和配置环境 Java环境的下载和配置 (1)IDEA的下载和安装 ​ (2)JdK的安装 Tomcat的下载 ...

  8. javaweb课程设计(简单的学生成绩查询系统)

    学生成绩查询系统 基于JDBC,c3p0数据库连接池,使用sqlserver作为数据库管理,使用三层架构的简单的学生成绩查询系统. //代码仓库见文末 登录界面 密码错误登陆拦截 主界面(教师) 设置 ...

  9. java简单学生成绩系统_JAVA 实现简单的学生成绩管理系统

    一.实验目的 1.掌握java的类与对象的基本概念: 2.掌握简单的信息管理系统的设计与实现. 二.实验环境 实验建议在安装了以下软件的计算机上完成: 1.       Windows xp/win7 ...

最新文章

  1. Innodb Buffer Pool的三种Page和链表
  2. matplotlib 使用 plt.savefig() 输出图片去除旁边的空白区域
  3. win32中如何使用CString
  4. 大牛书单 | 腾讯运维大咖陪你过724
  5. how is my appointment opened in HCP
  6. 夜视模式,多少猥琐相机假汝之名
  7. access求斐波拉契数列_打印目录,斐波那契数列的递归与循环,牧场牛数
  8. mysql获取当前时间的订单_mysql获取当前时间,及其相关操作
  9. 如何按行政区划下载谷歌地图并裁剪
  10. 人工智能、机器学习、神经网络、深度学习之间的关系
  11. Transformer论文阅读(一):CoTr: Efficiently Bridging CNN and Transformer for 3D Medical Image Segmentation
  12. 计算机网络局域网之无线局域网
  13. 如何给客户做产品培训
  14. fgets() 函数
  15. Linux 启动定时任务配置
  16. 51单片机串口通信原理
  17. 金融行业移动信息化解决方案
  18. Vue页面偶尔样式错乱,刷新即恢复
  19. 心理测评软件的心理测试法的优缺点,使用心理测评软件的意义与重要性
  20. php5.6版本帝国cms后台内容不显示,帝国cms后台编辑器显示不完整无法操作的处理方法...

热门文章

  1. 如何改编一首吉他曲的和弦?
  2. (五十二):多模态情感分析研究综述_张亚洲
  3. 区块链预言机 Chainlink 测试环境部署与使用/探索区块链预言机的实现原理
  4. 【奇葩瑞萨-002】调教Renesas RX130独立看门狗
  5. 身边的一个可爱女程序媛
  6. 快手短视频产品分析报告-小白文
  7. 肺管家科普:引发肺气肿的原因竟然是这些...
  8. matlab运用函数随机点名,matlab随机点名程序
  9. 【Kong】网关-rate-limiting限流
  10. 全新解密域名防红系统源码,支持分站