JOU2023_Java期末考试题目

第一题

    程序改错题,具体代码没有,毕竟是机考的,简单描述一下就是多线程+GUI中的Graphics类绘图,加上类名要更改的格式大概是14个左右,反正能运行达到考试的界面要求就OK了,主要错误还是蛮简单的,期末主要考察线程创建的俩种方式,大家要记住,1:继承自Thread类,2:实现Runnable接口,考试好像是用的实现接口的方式定义的,当时那个错误应该是用implements关键字,而不是用extends,其余的错误像重写的run方法,start()方法写成run()方法,public的l写成了1,super关键字大写,构造方法的传参对象错误之类的,还有就是文件名改了,自己的本类类名也要改,包括像构造方法。

第二题

    第二题是一共九个数,让你去先输出原数组,按照格式[a1,a2,a3,a4,a5]这样的格式去输出,然后再排序(从小到大),然后再求中位数,但是考试的时候那个题目指定了元素的个数(9个),数组长度就是9,当时想了一下应该是跟长度的一半有关,但是因为上一个步骤调冒泡排序稍微没控制时间,所以耍了一点小聪明,我直接输出的第五个数字,哈哈哈哈哈哈哈,说实话时间还是挺紧的,主要是这道题我觉得可能是老师为了方便改卷所以就指定了长度和具体数字,严格来说应该是要去写一个寻找中位数的一个小判断(长度为奇,偶时的不同情况)下面附上源码。

import java.util.Arrays;

public class Demo1 {
    public static void main(String[] args) {
        //题目所给的是九个double类型的数据
        //具体的数据不记得了,这里我就用几个数据代替一下,反正就是那个意思
        double []a={5.2,3.5,6.2,1.2,2.5,6.9,9.8,10.2,2.1};
        //先按照指定的格式输出原数组
        int count=0;
        System.out.print("原数组为:");

        System.out.print("[");

        for(int i=0;i<8;i++)
        {
            System.out.print(a[i]+",");
            count++;
            if(count==8)
            {
                System.out.print(a[count]+"]");
            }
        }
        System.out.println();
        System.out.print("排序后的数组为:");
        System.out.print("[");

        Arrays.sort(a);   //这里如果考试不会手写冒泡就用Arrays中的sort方法,但是别忘记导包是util下的
                         //默认排序是从小到大的
        int count1=0;
       for(int i=0;i<8;i++)
       {
           System.out.print(a[i]+",");
           count1++;
           if(count1==8)
           {
               System.out.print(a[count1]+"]");
          
  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值