gpt4 book ai didi

java - 简单问卷数组程序

转载 作者:行者123 更新时间:2023-12-01 21:47:14 30 4
gpt4 key购买 nike

我想创建一个简单的调查问卷程序 - 每个有 5 个问题和 4 个答案。每次运行时,问题和答案的顺序都是随机的。

例如:

第一次运行:

  1. 红色的水果是什么?A。苹果b.菠萝C。橙色 D.梨

  2. 什么形状有 3 条边?A。正方形 B.圆圈C。三角形D.八边形

第二次运行:

  1. 什么形状有 3 条边?A。八边形 B.正方形C。圆 D.三角形
  2. 红色的水果是什么?A。奥兰治 B.苹果C。梨 D.菠萝

--编辑--这是我根据建议编写的代码草案:

public static void main(String[] args) {
Scanner input = new Scanner (System.in);
Random rand = new Random();

ArrayList<ArrayList<String>> arrList = new ArrayList<ArrayList<String>>();
ArrayList<String> question = new ArrayList<String>();
ArrayList<String> choiceShuffle = new ArrayList<String>();
ArrayList<String> choice1 = new ArrayList<String>();
ArrayList<String> choice2 = new ArrayList<String>();
ArrayList<String> choice3 = new ArrayList<String>();

int numQuestion = 3;
int randomNum = rand.nextInt(numQuestion);
int score = 0;
String questionShuffle;
questionShuffle = question.get(randomNum);
choiceShuffle = arrList.get(randomNum);

question.add("What is after a?");
question.add("What is after b?");
question.add("What is after c?");

choice1.add("a"); choice1.add("b"); choice1.add("c");
choice2.add("d"); choice2.add("c"); choice2.add("e");
choice3.add("d"); choice3.add("a"); choice3.add("b");

arrList.add(choice1);
arrList.add(choice2);
arrList.add(choice3);

for (int x = 1; x <= question.size(); x++){
System.out.print(question.get(randomNum));
Collections.shuffle(choiceShuffle);
System.out.println(choiceShuffle);
}
}

}

我哪里出错了?我还想创建一个名为“score”的变量,每当选择正确的答案时,它就会启动 Score++。欢迎提出建议。

最佳答案

您可以使用 Java 中提供的 Random 类来生成随机数。

Random rand = new Random();
int randomNum = rand.nextInt((max - min) + 1) + min;

此处 max 将是您的问题数量,在您的特定情况下,您可以将 min 设置为 0,您可以使用 Swing 类来设计您的 GUI。大多数 IDE(例如 NetBeans/Eclipse)都提供创建 GUI 的功能,而无需编写显式代码。现在,根据您的随机数,您可以访问问题[rand]。您可以将您的问题和答案实现为arraylists,并以问题[rand] 的形式访问您的问题。您可以使用

来随机排列相应的答案列表

Collections.shuffle(answerList);

编辑:以下是示例代码供您引用:

import java.util.ArrayList; import java.util.Iterator; import java.util.Random; import java.util.Collections;

public class JavaApplication1 {

public static void main(String[] args) {
/** * Create ArrayList in ArrayList Object */
ArrayList<ArrayList<String>> quesAns = new ArrayList<ArrayList<String>>();
ArrayList<String> answer = new ArrayList<String>();
ArrayList<String> question = new ArrayList<String>();
question.add("what's your fruit?");
question.add("what's your shape?");
answer.add("apple");
answer.add("banana");
answer.add("mango");
quesAns.add(answer);
ArrayList<String> answer2 = new ArrayList<String>();
answer2.add("circle");
answer2.add("rectangle");
quesAns.add(answer2);
Random rand = new Random();
numQues = 2
int randomNum = rand.nextInt(numQues);
System.out.println (question.get(randomNum));
ArrayList<String> answerListShuffle = new ArrayList<String>();
answerListShuffle = quesAns.get(randomNum);
Collections.shuffle(answerListShuffle);
System.out.println(answerListShuffle);

}

}

这只是一个示例实现。您可以组成这些数组列表,并根据元素数量在循环内添加元素

关于java - 简单问卷数组程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35848513/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com