这几天再给学校里做一个考试系统,有选择题、判断题和多选题,前两个题型判断比较容易,但是在多选题上就卡壳了。要求是正确答案在三个及以上,考生输入的两个及以上正确答案挣1分。全对挣1.5分。


由于是web端的考试系统所以获取到的考生答案和正确答案均为字符串数组

代码如下:

package demo;import java.util.Arrays;public class MultSelectTest {/*** @param args*/public static void main(String[] args) {// TODO Auto-generated method stubint count_all = 0;int count_part = 0;String[] sure_answer = { "1", "2", "3", "4" };String[] user_answer = { "1", "2", "3", "4" };if (user_answer.length <= sure_answer.length) {//jdk自带方法:判断两个数组是否完成相等(一一对应)if (Arrays.equals(sure_answer, user_answer)) {count_all++;} else if (MultSelectTest.containArray(sure_answer, user_answer)) {count_part++;}}System.out.println("多选题全对的有:" + count_all + ",多选题部分对的有:" + count_part);}// 判断sure_answer数组是否全部包含user_answer数组并且相同的元素不少于两个public static boolean containArray(String[] sure_answer,String[] user_answer) {//true表示多选题部分对,false表示不对boolean bool = true;// 用户输入的每一个答案都遍历正确答案数组,如果count等于正确答案数组的个数,则这个答案是错的。int count = 0;// 对题的个数:防止出现考生输入一个答案的情况int ques_count = 0;for (int i = 0; i < user_answer.length; i++) {for (int j = 0; j < sure_answer.length; j++) {if (!user_answer[i].equals(sure_answer[j])) {count++;}}//看count声明时的注释if (count == sure_answer.length) {bool = false;break;} else {//表示这个打算对了ques_count++;}// 出现一个错误选项直接返回falseif (!bool) {return bool;}}//相对元素的个数在两个以上才算对if (ques_count <= 1) {bool = false;}return bool;}
}

在注释里已经写的非常清楚了…..如果有问题的话,欢迎私信或评论….

JAVA——判断多选题的对错相关推荐

  1. JAVA考试多选题判断得分

    文章目录 前言 一.多选题评分规则 二.根据对错情况计算分值 三.测试代码 总结 前言 躲得多初一,躲不过十五.大家好,我是程序员十五, 最近呢,在做一个考试系统.用于客户内部培训使用,可是甲方爸爸不 ...

  2. 判断字符串不包含某个字符php,java判断字符串是否包含某个字符的方法

    java判断字符串是否包含某个字符的方法: 一.contains方法 1:描述 java.lang.String.contains() 方法返回true,当且仅当此字符串包含指定的char值序列 2: ...

  3. java判断总共天数_Java判断两个日期相差天数的方法

    本文实例讲述了Java判断两个日期相差天数的方法.分享给大家供大家参考.具体如下: import java.util.Calendar; public class DateDifferent{ pub ...

  4. java 包含汉字,【转载】Java判断字符串中是不是包含汉字

    [转载]Java判断字符串中是否包含汉字 import java.util.regex.Matcher; import java.util.regex.Pattern; public class If ...

  5. java判断回文字符串几种简单的实现

    11年it研发经验,从一个会计转行为算法工程师,学过C#,c++,java,android,php,go,js,python,CNN神经网络,四千多篇博文,三千多篇原创,只为与你分享,共同成长,一起进 ...

  6. java - 判断 字符串是否为空

    java - 判断 字符串是否为空 方法一: 最多人使用的一个方法, 直观, 方便, 但效率很低.1:if(s == null || s.equals(""));方法二: 比较字符 ...

  7. Java 判断字符串是否为空的四种方法、优缺点与注意事项

    以下是Java 判断字符串是否为空的四种方法: 方法一: 最多人使用的一个方法, 直观, 方便, 但效率很低: if(s == null ||"".equals(s)); 方法二: ...

  8. java判断括号是否闭合_用 java 判断 括号是否完全匹配

    用 java 判断 括号是否完全匹配: package emp; import java.util.Stack; public class Parentheses { public static vo ...

  9. java 判断 中文字符_java中判断字符串中是否有中文字符

    package com.meritit.test; public class TestChart { public static void main(String[] args) throws Exc ...

  10. Java判断一组数字是否是等差数列

    Java判断一组数字是否是等差数列 公式: 1.先排序 2.当前数=第一个数+相邻两数的差[公差]*当前位置 eg: 1,3,5 每个数字之间相差2,假如当前数是5,则与前面相差两个2, 因为如果是等 ...

最新文章

  1. pandas为dataframe添加新的数据行(rows)、在dataframe后面纵向添加一行数据(数据为列表list形式)、列有不匹配将会使用NA值进行填补
  2. qtp web随机获取下拉框的值
  3. photoshop 常见问题与分析
  4. “高考”机器人横空出世 2017年居然要考“大学”
  5. Linux网络编程--聊天室客户端程序
  6. [转载] Python中str跟int的转换
  7. web开发 开发一个能发送邮件的应用
  8. 【Oracle】重命名数据文件
  9. img src SVG使用CSS更改样式
  10. 图片相似度识别在线_图片相似度计算的几种方法
  11. 文字转化为语音TextToSpeech
  12. Windows10下python pip卸载并重新安装
  13. 大数据环境中资源优化配置策略研究(非原创)
  14. (已上传源码)最近开发的一款应用,我选择了哪些框架 第三方库
  15. 学生计算机屏幕坏了怎么办,电脑自己检查自己修,如果显示器坏掉我们该怎么办?...
  16. SQL 语句:不得使用外键与级联,一切外键概念必须在应用层解决
  17. 五、APP分类和手机选择
  18. DenseBox 论文笔记
  19. 增益自适应PI控制器+死区过滤器(Smart PLC向导PID编程应用)
  20. con和com开头单词规律_英语成绩总上不了120分?问题出在背单词!

热门文章

  1. 百度推广怎么做排名靠前网站链接
  2. The7主题安装教程Wordpress
  3. 电阻(1)电阻种类篇
  4. cocos creator-Assembler2D
  5. c++中arccos()的用法(提醒自己)
  6. 恩智浦杯智能汽车大赛—直立车模实现原理(mpu6050控制)
  7. TestFlight测试步骤
  8. 把计算机怎么连接手机的网络助手在哪里,手机如何连接电脑上网
  9. 通过注册表禁用系统服务
  10. C++图形函数库EGE、raylib和EasyX及可以使用的开发工具小龙Dev-C++、小熊猫C++介绍