别看了,别看了 2023-01-04 16:21 采纳率: 0%
浏览 81
已结题

关于#java#的问题,请各位专家解答!

在选择完课程出现如下报错

img


package view;

import java.awt.BorderLayout;
import java.awt.CardLayout;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.Font;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.Vector;

import javax.swing.BorderFactory;
import javax.swing.JButton;
import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JRadioButton;
import javax.swing.JTextArea;
import javax.swing.Timer;

import bean.Subject;
import mysql.OperateDB;
import mysql.StudentOperateDB;

public class StudentV extends JFrame implements ActionListener{
    //基础面板
    private CardLayout card1 = new CardLayout();
    private JPanel p = new JPanel(card1);
    private JPanel[] ps = new JPanel[3];
    //全局变量
    private static int n = 0;
    private String sname= null;
    private String cname = null;
    private String studentID = null;
    private String courseID = null;
    private int score = 0;
    /*
     * 初始化
     */
    public StudentV(String studentID,String sname) {
        this.studentID = studentID;
        this.sname = sname;
        this.setTitle("在线考试系统--学生");
        this.setSize(750,600);
        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        this.setLocationRelativeTo(null);
        this.setResizable(false);
        this.add(p);
        //初始化基础面板
        Pane0();
        Pane1();
        Pane2();
        
    }
    /*
     * 出发!!!
     */
    public static void main(String[] args) {
        new StudentV("","柯芷茵").setVisible(true);
        
    }
    /*
     * p0 科目选择分区
     */
    private JComboBox<String> cb_course = new JComboBox<>();
    private JButton btn0 = new JButton("选择");
    public void Pane0() {
        ps[0] = new JPanel();
        ps[0].setLayout(null);
        ps[0].setBackground(Color.white);
        p.add("p0",ps[0]);
        JLabel lb_welcome_tit = new JLabel("欢迎使用在线考试管理系统");
        lb_welcome_tit.setBounds(280,40,220,30);
        lb_welcome_tit.setFont(new Font("微软雅黑",1,16));
        JTextArea tf_welcome = new JTextArea("各位同学们好:\n"
                + "        您现在使用的是由中山大学南方学院某名18级学生所开发的在线考试管理系统,通过该在线考试管理系统,您可以在线选择考试科目,在规定时间内,提交作答完毕的试卷,"
                + "系统即刻给出您的考试结果,您还可以查看答案解析,了解更多知识,祝你考试顺序。");
        tf_welcome.setBounds(50,100,650,100);
        tf_welcome.setLineWrap(true);
        tf_welcome.setEditable(false);
        tf_welcome.setBorder(BorderFactory.createCompoundBorder(
                BorderFactory.createLineBorder(Color.GRAY,2),BorderFactory.createEmptyBorder(10,13,10,13)));
        JLabel lb = new JLabel("科目选择 :");
        lb.setBounds(210,240,70,25);
        cb_course.setBackground(Color.GRAY);
        cb_course.setForeground(Color.WHITE);
        cb_course.setBounds(280,240,180,25);
        //加载试题类型--功能
        Vector<String> v = OperateDB.loadCourse();
        for(int i=0; i<v.size(); i++) {
            cb_course.addItem(v.get(i));
        }
        btn0.setBackground(Color.GRAY);
        btn0.setForeground(Color.white);
        btn0.setBounds(480,240,80,25);
        btn0.addActionListener(this);
        ps[0].add(lb_welcome_tit);
        ps[0].add(tf_welcome);
        ps[0].add(lb);
        ps[0].add(cb_course);
        ps[0].add(btn0);
    }
    /*
     * p1考试 分区
     */
    private JPanel p1_up = new JPanel();
    private JPanel[] p1_ups = new JPanel[3];
    private JButton btn1 = new JButton("提交");
    private JButton btn1_prev = new JButton("上一页");
    private JButton btn1_next = new JButton("下一页");
    private JButton btn1_choice = new JButton("题号选择");
    private JLabel lb_sname = new JLabel();
    private JLabel lb_cname = new JLabel();
    private JLabel lb_time = new JLabel("时间使用:00:00");
    private JButton[] btn1_NO = new JButton[10]; 
    private CardLayout card2 = new CardLayout();
    private JPanel p1_down = new JPanel(card2);
    private JPanel[] p1_downs = new JPanel[5];
    private ArrayList<Subject> list_subject = new ArrayList<>();
    public void Pane1() {
        //基础面板
        ps[1] = new JPanel();
        ps[1].setLayout(new BorderLayout());
        ps[1].add(p1_up,BorderLayout.NORTH);
        ps[1].add(p1_down,BorderLayout.CENTER);
        p.add("p1",ps[1]);
        for(n=0;n<p1_ups.length;n++) {
            p1_ups[n] = new JPanel();
        }
        for(n=0;n<p1_downs.length;n++) {
            p1_downs[n] = new JPanel();
        }
        p1_up.setPreferredSize(new Dimension(750,85));
        JLabel lb21 = new JLabel("考试时间 :30 分钟");
        lb21.setPreferredSize(new Dimension(140,30));
        JLabel lb22 = new JLabel("总分 :100分");
        lb22.setPreferredSize(new Dimension(120,30));
        lb_sname.setPreferredSize(new Dimension(120,30));
        lb_cname.setPreferredSize(new Dimension(140,30));
        lb_time.setPreferredSize(new Dimension(120,30));
        //????
        p1_ups[0].add(lb21);
        p1_ups[0].add(lb22);
        p1_ups[0].add(lb_sname);
        p1_ups[0].add(lb_cname);
        p1_ups[0].add(lb_time);
        btn1.setBackground(Color.gray);
        btn1.setForeground(Color.WHITE);
        btn1.setPreferredSize(new Dimension(100,25));
        btn1.addActionListener(this);
        btn1_prev.setBackground(Color.gray);
        btn1_prev.setForeground(Color.WHITE);
        btn1_prev.setPreferredSize(new Dimension(100,25));
        btn1_prev.addActionListener(this);
        btn1_next.setBackground(Color.gray);
        btn1_next.setForeground(Color.WHITE);
        btn1_next.setPreferredSize(new Dimension(100,25));
        btn1_next.addActionListener(this);
        btn1_choice.setBackground(Color.gray);
        btn1_choice.setForeground(Color.WHITE);
        btn1_choice.setPreferredSize(new Dimension(100,25));
        btn1_choice.addActionListener(this);
        p1_ups[1].setPreferredSize(new Dimension(745,35));
        p1_ups[1].setBackground(Color.LIGHT_GRAY);
        p1_ups[1].add(btn1_prev);
        p1_ups[1].add(btn1_next);
        p1_ups[1].add(btn1_choice);
        p1_ups[1].add(btn1);
        //面板归置
        for(n=0;n<p1_ups.length;n++) {
            p1_up.add(p1_ups[n]);
        }
        for(n=0;n<p1_downs.length;n++) {
            p1_down.add("p1_down"+n,p1_downs[n]);
        }
    }
    /*
     * p2 考试结果分区
     */
    private JButton btn2 = new JButton("退出系统");
    private JPanel p2_up = new JPanel();
    private JPanel[] p2_ups = new JPanel[2];
    JLabel lb_result = new JLabel();
    private JButton  btn2_check = new JButton("查看答案");
    private JButton btn2_prev = new JButton("上页");
    private JButton btn2_next = new JButton("下页");
    private CardLayout card3 = new CardLayout();
    private JPanel p2_down = new JPanel(card3);
    private JPanel[] p2_downs = new JPanel[6];
    public void Pane2() {
        ps[2] = new JPanel();
        ps[2].setLayout(new BorderLayout());
        ps[2].add(p2_up,BorderLayout.NORTH);
        ps[2].add(p2_down,BorderLayout.CENTER);
        p.add("p2",ps[2]);
        p2_up.setPreferredSize(new Dimension(745,105));
        for(n=0;n<p2_ups.length;n++) {
            p2_ups[n] = new JPanel();
            p2_up.add(p2_ups[n]);
        }
        lb_result.setFont(new Font("微软雅黑",1,16));
        lb_result.setPreferredSize(new Dimension(300,50));
        p2_ups[0].add(lb_result);
        
        p2_ups[1].setBackground(Color.LIGHT_GRAY);
        p2_ups[1].setPreferredSize(new Dimension(745,35));
        btn2.setBackground(Color.gray);
        btn2.setForeground(Color.WHITE);
        btn2.setPreferredSize(new Dimension(100,25));
        btn2.addActionListener(this);
        btn2_check.setBackground(Color.gray);
        btn2_check.setForeground(Color.WHITE);
        btn2_check.setPreferredSize(new Dimension(100,25));
        btn2_check.addActionListener(this);
        btn2_prev.setBackground(Color.LIGHT_GRAY);
        btn2_prev.setForeground(Color.WHITE);
        btn2_prev.setPreferredSize(new Dimension(60,20));
        btn2_prev.addActionListener(this);
        btn2_next.setBackground(Color.LIGHT_GRAY);
        btn2_next.setForeground(Color.WHITE);
        btn2_next.setPreferredSize(new Dimension(60,20));
        btn2_next.addActionListener(this);
        p2_ups[1].add(btn2_check);
        p2_ups[1].add(btn2);
        
        for(n=0;n<p2_downs.length;n++) {
            p2_downs[n] = new JPanel();
            p2_downs[n].setBackground(Color.white);
            p2_down.add("p2_down"+n,p2_downs[n]);
        }
        JLabel lb_over = new JLabel("恭喜,完成考试 \\(^@^)/");
        lb_over.setPreferredSize(new Dimension(150,100));
        p2_downs[0].add(lb_over);
        
    }
    /*
     * 计时器
     */
    private void setTimer(JLabel time) {
        final JLabel varTime = time;
        Timer timeAction = new Timer(1000, new ActionListener() {
            long timemillis2 = (System.currentTimeMillis()-1000);
            public void actionPerformed(ActionEvent e) {
                long timemillis1 = System.currentTimeMillis();
                long timemillis = timemillis1-timemillis2;
                // 转换日期显示格式
                SimpleDateFormat df = new SimpleDateFormat("mm:ss");
                varTime.setText("时间使用:"+df.format(new Date(timemillis)));
            }
        });
        timeAction.start();
    }
    /*
     * 试题模板
     */
    private Vector<String> v_answer = new Vector<>();
    private Vector<JRadioButton> v_rb = new Vector<>();
    public void subjectPane(JPanel panel,int NO1,Subject subject1,int NO2,Subject subject2) {
        panel.setBackground(Color.WHITE);
    
        JLabel lb_NO = new JLabel(" 第 "+NO1+" 题");
        lb_NO.setPreferredSize(new Dimension(50,50));
        JLabel lb_title = new JLabel(subject1.getTitle());
        lb_title.setPreferredSize(new Dimension(670,50));
        JLabel lb_A = new JLabel(subject1.getOptionA());
        lb_A.setPreferredSize(new Dimension(670,25));
        JLabel lb_B = new JLabel(subject1.getOptionB());
        lb_B.setPreferredSize(new Dimension(670,25));
        JLabel lb_C = new JLabel(subject1.getOptionC());
        lb_C.setPreferredSize(new Dimension(670,25));
        JLabel lb_D = new JLabel(subject1.getOptionD());
        lb_D.setPreferredSize(new Dimension(670,25));
        JLabel lb_choose = new JLabel("选择答案:");
        lb_choose.setPreferredSize(new Dimension(75,40));
        JRadioButton rb_A = new JRadioButton("A");
        rb_A.setPreferredSize(new Dimension(50,25));
        rb_A.setBackground(Color.white);
        v_rb.add(rb_A);
        JRadioButton rb_B = new JRadioButton("B");
        rb_B.setPreferredSize(new Dimension(50,25));
        rb_B.setBackground(Color.white);
        v_rb.add(rb_B);
        JRadioButton rb_C = new JRadioButton("C");
        rb_C.setPreferredSize(new Dimension(50,25));
        rb_C.setBackground(Color.white);
        v_rb.add(rb_C);
        JRadioButton rb_D = new JRadioButton("D");
        rb_D.setPreferredSize(new Dimension(440,25));
        rb_D.setBackground(Color.white);
        v_rb.add(rb_D);
        
        JLabel lb_NO1 = new JLabel(" 第 "+NO2+" 题");
        lb_NO1.setPreferredSize(new Dimension(50,50));
        JLabel lb_title1 = new JLabel(subject2.getTitle());
        lb_title1.setPreferredSize(new Dimension(670,50));
        JLabel lb_A1 = new JLabel(subject2.getOptionA());
        lb_A1.setPreferredSize(new Dimension(670,25));
        JLabel lb_B1 = new JLabel(subject2.getOptionB());
        lb_B1.setPreferredSize(new Dimension(670,25));
        JLabel lb_C1 = new JLabel(subject2.getOptionC());
        lb_C1.setPreferredSize(new Dimension(670,25));
        JLabel lb_D1 = new JLabel(subject2.getOptionD());
        lb_D1.setPreferredSize(new Dimension(670,25));
        JLabel lb_choose1 = new JLabel("选择答案:");
        lb_choose1.setPreferredSize(new Dimension(75,40));
        JRadioButton rb_A1 = new JRadioButton("A");
        rb_A1.setPreferredSize(new Dimension(50,25));
        rb_A1.setBackground(Color.white);
        v_rb.add(rb_A1);
        JRadioButton rb_B1 = new JRadioButton("B");
        rb_B1.setPreferredSize(new Dimension(50,25));
        rb_B1.setBackground(Color.white);
        v_rb.add(rb_B1);
        JRadioButton rb_C1 = new JRadioButton("C");
        rb_C1.setPreferredSize(new Dimension(50,25));
        rb_C1.setBackground(Color.white);
        v_rb.add(rb_C1);
        JRadioButton rb_D1 = new JRadioButton("D");
        rb_D1.setPreferredSize(new Dimension(440,25));
        rb_D1.setBackground(Color.white);
        v_rb.add(rb_D1);
        
        panel.add(lb_NO);
        panel.add(lb_title);
        panel.add(lb_A);
        panel.add(lb_B);
        panel.add(lb_C);
        panel.add(lb_D);
        panel.add(lb_choose);
        panel.add(rb_A);
        panel.add(rb_B);
        panel.add(rb_C);
        panel.add(rb_D);
        panel.add(lb_NO1);
        panel.add(lb_title1);
        panel.add(lb_A1);
        panel.add(lb_B1);
        panel.add(lb_C1);
        panel.add(lb_D1);
        panel.add(lb_choose1);
        panel.add(rb_A1);
        panel.add(rb_B1);
        panel.add(rb_C1);
        panel.add(rb_D1);
    }
    /*
     * 答案模板
     */
    private void answerPane(JPanel panel,int NO1,Subject subject1,int NO2,Subject subject2) {
        JLabel lb_NO = new JLabel(" 第 "+NO1+" 题");
        lb_NO.setPreferredSize(new Dimension(50,50));
        JLabel lb_title = new JLabel(subject1.getTitle());
        lb_title.setPreferredSize(new Dimension(670,50));
        JLabel lb_A = new JLabel(subject1.getOptionA());
        lb_A.setPreferredSize(new Dimension(680,20));
        JLabel lb_B = new JLabel(subject1.getOptionB());
        lb_B.setPreferredSize(new Dimension(680,20));
        JLabel lb_C = new JLabel(subject1.getOptionC());
        lb_C.setPreferredSize(new Dimension(680,20));
        JLabel lb_D = new JLabel(subject1.getOptionD());
        lb_D.setPreferredSize(new Dimension(680,20));
        JLabel lb_answer = new JLabel("正确答案:"+subject1.getAnswer());
        lb_answer.setPreferredSize(new Dimension(200,20));
        JLabel lb_choose = new JLabel("选择答案:"+v_answer.get(NO1-1));
        lb_choose.setPreferredSize(new Dimension(478,20));
        JLabel lb_analysis = new JLabel("参考解析:"+subject1.getParse());
        lb_analysis.setPreferredSize(new Dimension(685,20));
        
        JLabel lb_NO1 = new JLabel(" 第 "+NO2+" 题");
        lb_NO1.setPreferredSize(new Dimension(50,50));
        JLabel lb_title1 = new JLabel(subject2.getTitle());
        lb_title1.setPreferredSize(new Dimension(670,50));
        JLabel lb_A1 = new JLabel(subject2.getOptionA());
        lb_A1.setPreferredSize(new Dimension(680,20));
        JLabel lb_B1 = new JLabel(subject2.getOptionB());
        lb_B1.setPreferredSize(new Dimension(680,20));
        JLabel lb_C1 = new JLabel(subject2.getOptionC());
        lb_C1.setPreferredSize(new Dimension(680,20));
        JLabel lb_D1 = new JLabel(subject2.getOptionD());
        lb_D1.setPreferredSize(new Dimension(680,20));
        JLabel lb_answer1 = new JLabel("正确答案:"+subject2.getAnswer());
        lb_answer1.setPreferredSize(new Dimension(200,20));
        JLabel lb_choose1 = new JLabel("选择答案:"+v_answer.get(NO2-1));
        lb_choose1.setPreferredSize(new Dimension(478,20));
        JLabel lb_analysis1 = new JLabel("参考解析:"+subject2.getParse());
        lb_analysis1.setPreferredSize(new Dimension(685,20));
        panel.add(lb_NO);
        panel.add(lb_title);
        panel.add(lb_A);
        panel.add(lb_B);
        panel.add(lb_C);
        panel.add(lb_D);
        panel.add(lb_answer);
        panel.add(lb_choose);
        panel.add(lb_analysis);
        panel.add(lb_NO1);
        panel.add(lb_title1);
        panel.add(lb_A1);
        panel.add(lb_B1);
        panel.add(lb_C1);
        panel.add(lb_D1);
        panel.add(lb_answer1);
        panel.add(lb_choose1);
        panel.add(lb_analysis1);
    }
    /*
     * 事件监听
     */
    @Override
    public void actionPerformed(ActionEvent e) {
        if(e.getSource()==btn0) {
            if(cb_course.getSelectedItem().equals("-----------请选择---------------")) {
                JOptionPane.showMessageDialog(ps[0], "请选择考试科目");
                return;
            }
            cname = (String) cb_course.getSelectedItem();
            this.courseID = StudentOperateDB.getCourseID(cname);
            lb_cname.setText("科目:"+cname);
            lb_sname.setText("考生:"+sname);
            //加载试题--功能
            list_subject = StudentOperateDB.getSubjects(cname);
            n=0;
            for(int i=0;i<10;i=i+2) {
                subjectPane(p1_downs[n], i+1,list_subject.get(i), i+2,list_subject.get(i+1));
                n++;
            }
            //考试计时
            card1.show(p,"p1");
            setTimer(lb_time);
        }else if(e.getSource()==btn1) {
            //计分--功能
            /*System.out.println(v_rb.size()); 测试*/
            for(n=0; n<v_rb.size(); n++) {
                if(v_rb.get(n).isSelected()) {
                    v_answer.add(v_rb.get(n).getText());
                }
            }
            /*System.out.println(v_answer.size()); 测试*/
            for(n=0; n<10;n++) {
                if(v_answer.get(n).equals(list_subject.get(n).getAnswer())) {
                    score+=10;
                }
            }
            lb_result.setText("考试结果:"+sname+"在"+cname+"得分"+score+"分");
            n=1;
            for(int i=0;i<10;i=i+2) {
                /*System.out.println(i+2);测试*/
                answerPane(p2_downs[n], i+1,list_subject.get(i), i+2,list_subject.get(i+1));
                n++;
            }
            //录入成绩--功能
            if(StudentOperateDB.inputScore(studentID, courseID, score)) {
                System.out.println("成绩录入成功");
            }
            card1.show(p,"p2");
        }else if(e.getSource()==btn2) {
            System.exit(0);
        }
        //考试分区
        if(e.getSource()==btn1_prev) {
            card2.previous(p1_down);
        }else if(e.getSource()==btn1_next) {
            card2.next(p1_down);
        }else if(e.getSource()==btn1_choice) {
            p1_ups[2].removeAll();
            p1_ups[2].setLayout(new GridLayout(1,5));
            for(int i=0;i<btn1_NO.length;i++) {
                btn1_NO[i] = new JButton(i+1+"");
                btn1_NO[i].setBackground(Color.LIGHT_GRAY);
                btn1_NO[i].setForeground(Color.WHITE);
                btn1_NO[i].setPreferredSize(new Dimension(50,25));
                btn1_NO[i].addActionListener(this);
                p1_ups[2].add(btn1_NO[i]);
            }
            p1_ups[2].repaint();
            p1_up.setPreferredSize(new Dimension(750,120));
            p1_up.repaint();
            validate();
        }
        for(n=0;n<btn1_NO.length;n++) {
            if(e.getSource()==btn1_NO[n]) {
                if(n<2) {
                    card2.show(p1_down, "p1_down0");
                }else if(n>=2 && n<4) {
                    card2.show(p1_down, "p1_down1");
                }else if(n>=4 && n<6) {
                    card2.show(p1_down, "p1_down2");
                }else if(n>=6 && n<8) {
                    card2.show(p1_down, "p1_down3");
                }else if(n>=8 && n<10) {
                    card2.show(p1_down, "p1_down4");
                }
            }
        }
        //考试结束分区
        if(e.getSource()==btn2_check) {
            p2_ups[1].removeAll();
            p2_ups[1].add(btn2_check);
            p2_ups[1].add(btn2_prev);
            p2_ups[1].add(btn2_next);
            p2_ups[1].add(btn2);
            p2_ups[1].repaint();
            validate();
            card3.show(p2_down,"p2_down1");
        }else if(e.getSource()==btn2_prev){
            card3.previous(p2_down);
        }else if(e.getSource()==btn2_next){
            card3.next(p2_down);
        }
        
    }

}







package mysql;

import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;

import bean.Subject;

public class StudentOperateDB {
    /*
     * 登录成功,获取学生姓名
     */
    public static String getSname(String studentID) {
        String sql ="select sname from student where studentID="+studentID;
        PreparedStatement ps;
        ResultSet rs;
        try {
            ps = ConnectDB.getConn().prepareStatement(sql);
            rs = ps.executeQuery();
            if(rs.next()) {
                return rs.getString(1);
            }
        } catch (SQLException e) {
            e.printStackTrace();
        }
        return null;
    }
    /*
     * 获取课程ID
     */
    public static String getCourseID(String cname) {
        String sql = "select courseID from course where cname='"+cname+"'";
        PreparedStatement ps;
        ResultSet rs;
        try {
            ps = ConnectDB.getConn().prepareStatement(sql);
            rs = ps.executeQuery();
            while(rs.next()) {
                return rs.getString(1);
            }
        } catch (SQLException e) {
            e.printStackTrace();
        }
        return null;
    }
    /*
     * 由试题类型,获取对应试题
     */
    public static ArrayList<Subject> getSubjects(String cname){
        ArrayList<Subject> list = new ArrayList<>();
        Subject subject;
        String sql = "select * from subject where cname='"+cname+"'";
        PreparedStatement ps;
        ResultSet rs;
        try {
            ps = ConnectDB.getConn().prepareStatement(sql);
            rs = ps.executeQuery();
            while(rs.next()) {
                subject = new Subject(rs.getString(2),rs.getString(3),rs.getString(4),rs.getString(5),
                        rs.getString(6),rs.getString(7),rs.getString(8),rs.getString(9));
                list.add(subject);
            }
            return list;
        } catch (SQLException e) {
            e.printStackTrace();
        }
        return null;
    }
    /*
     * 录入成绩
     */
    public static boolean inputScore(String studentID, String courseID,int score) {
        String sql = "insert into score(studentID,courseID,result) values"
                + "('"+studentID+"','"+courseID+"','"+score+"')";
        PreparedStatement ps;
        try {
            ps = ConnectDB.getConn().prepareStatement(sql);
            ps.execute();
            return true;
        } catch (SQLException e) {
            e.printStackTrace();
        }
        return false;
    }
}









  • 写回答

1条回答 默认 最新

  • 阳光宅男xxb 2023-01-04 16:41
    关注

    数组越界,在选择科目那里,cb_course的值为空

    评论

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 1月10日
  • 创建了问题 1月4日

悬赏问题

  • ¥15 关于#java#的问题,请各位专家解答!
  • ¥15 急matlab编程仿真二阶震荡系统
  • ¥20 TEC-9的数据通路实验
  • ¥15 ue5 .3之前好好的现在只要是激活关卡就会崩溃
  • ¥50 MATLAB实现圆柱体容器内球形颗粒堆积
  • ¥15 python如何将动态的多个子列表,拼接后进行集合的交集
  • ¥20 vitis-ai量化基于pytorch框架下的yolov5模型
  • ¥15 如何实现H5在QQ平台上的二次分享卡片效果?
  • ¥30 求解达问题(有红包)
  • ¥15 请解包一个pak文件