java数组、方法作业11.23

数组
一、选择

1.下列数组声明的语法格式不正确的是( C )
A. int[] array;
B. int array[];
C. char[];
D. String[] strArray;

2.已知一个长度为10的数组b,数组b的第三个元素表示为?( C )
A. b[3] B. b(3) C. b[2] D. b(2)

3.当数组下标越界时,会发生( D、C、A )
A. 系统崩溃
B. 直接跳过
C. 抛出异常
D. 中止程序

4.下面代码的运行结果为:( A )
在这里插入图片描述
A. 55,8,5, B. 5,8,55, C. 8,5,55 D. 5,8,55

5、 下面代码的运行结果为:( D )
在这里插入图片描述
A. 4 B. 12 C. 0 D. 13

6.下面程序的运行结果是?( A )
在这里插入图片描述
A. 30 B. 60 C. 50 D. 20

7.以下关于二维数组创建对象的语法,错误的是?(多选) ( A、D)
A. char[][] ch=new char[][] ;
B. char ch[][]=new char[3][5];
C. char[] ch[]=new char[3][];
D. char[][] ch=new char[][5];

8.下列哪个选项是给二维数组的第一行第一列的元素赋值的。( D )
A. sum[][] = 3;
B. num[1][] = 3;
C. num[1][1] = 3;
D. sum[0][0] = 3;

9.以下代码的输出结果为?(A)
在这里插入图片描述

A. 2 4 B. 3 4 C. 3 3 D. 4 4

10.下列数组有几行几列(D)
在这里插入图片描述

A. 三行五列
B. 五行五列
C. 三行三列
D. 五行三列
二、编程
1.求数组中能被3整除的元素并打印输出。
数组内容:

public class ArrayDemo {
    public static void main(String[] args) {
		int[] arr={2,3,5,6,8,9,15,17,18,21,25,28};
		int i=0;
		for(int n:arr){
			if(n%3==0){
				System.out.println(n+" ");
				i++;
				if(i>arr.length){
					break;
				}
			}		
		}	
	}
}

2.在一个二维数组中存放了三名学生的语文和数学的成绩,分别求语文和数学的总成绩及平均分并输出。

public class ScoreDemo{
   public static void main(String[] args){
       /int[][] intArray;
		double ywzcj,ywpjf,sxzcj,sxpjf;
		ywzcj=0;ywpjf=0;sxzcj=0;sxpjf=0;
		intArray = new int[][]{{88,98},{75,88},{95,85}};
		for(int i=0;i<intArray.length;i++){
			for(int j=0;j<intArray[i].length;j++){
				if(j==0){
					ywzcj+=intArray[i][j];
					ywpjf=ywzcj/intArray.length;
				}
				if(j==1){
					sxzcj+=intArray[i][j];
					sxpjf=sxzcj/intArray.length;
				}
			}
		}
		System.out.println("语文总成绩:"+ywzcj);
		System.out.println("语文平均成绩:"+ywpjf);
		System.out.println("数学总成绩:"+sxzcj);
		System.out.println("数学平均成绩:"+sxpjf);
   }
}

方法
一、选择

  1. 下列代码的运行结果为: ( C )

    A. 没有任何输出
    B. 编译错误
    C. 晓明今年7岁了
    D. 晓明
    
    
  2. 下列代码运行的结果是( B )

    A. Hello,My name is Tom.
    B. Hello,My name is Peter.
    C. Hello,My name is Peter.My name is Tom.
    D. My name is Peter.
    
    
  3. 下列语句的执行结果为( C )

    A. 运行异常
    B. 运行错误
    C. 我的英文名字叫Tom
    D. 什么都不输出
    
    
  4. 下面这段程序的执行结果为: ( C )

    A. 12
    B. a+b+c=12
    C. a+b+c=16
    D. 16
    
    
  5. 已知如下代码,则位置(1)处正确的方法调用代码为? ( A )

    A. method.display(arr);
    B. method.display(arr[0]);
    C. method.display(a);
    D. method.display(a[0]);
    
    
  6. 已知方法的定义形式如下:public void plus(int a,int b){}
    下列选项中哪两个是合法的重载方法?(多选) (A、C)

    A. public int plus(int a){}
    B. public int plus1(int m,int n){}
    C. public void plus(float a,float b){}
    D. public int plus(int a,int b){}
    
    
  7. 下列代码,前者与后者是重载关系的是:( A )

    A. public void show(){}和public void show(int num){}
    B. public void show(){}和public void print(int num){}
    C. public void show(){}和public int show(){}
    D. public void show(int a){}和    public void show1(int b){}
    
    
  8. 以下代码的输出结果是什么? ( D )

    A. 40
    B. 8
    C. 4
    D. 10
    
    
  9. 以下代码的输出结果是什么? ( D )

    A. 2
    B. 3
    C. 4
    D. 6
    
    
  10. 关于可变参数列表的描述正确的是 ( B、C )

~~~
A. 当可变参数列表作为方法参数时,不能将数组传递给可变参数列表
B. 一个方法中,只能有一个可变参数列表作为参数
C. 重载的方法中,可变参数列表作为参数的重载方法不会优先被调用
D. 数组作为方法参数时,可以将多个值同时传递给数组

~~~

二、编程

  1. 定义一个方法,根据商品总价,计算出对应的折扣并输出。折扣信息如下:

    • 总价<100,不打折
    • 总价在100到199之间,打9.5折
    • 总价在200以上,打8.5折

    任务:
    1、定义一个方法,根据商品总价输出折后总价
    2、在主方法中定义对象
    3、使用对象调用定义的方法

public class Fun {
	public double discountPrice(double x){
	    double y=0;
		if(x<100){
			y=x;
		}else if(x<200){
			y=0.95*x;
		}else{
			y=0.85*x;
		}
		return y;
	}

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		double z=156d;
		Fun p = new Fun();
		double price=p.discountPrice(z);
		System.out.println("折后商品总价:"+price);

	}

}
~~~
  1. 编写方法,求数组元素的平均值。
    任务:
    1、定义一个方法,求数组的平均值
    2、在主方法中定义对象,并初始化一个float类型的数组,调用方法求数组元素的平均值,并将平均值打印输出
public class AverageDemo {
	public float plus(float[] a){
		float sum=0;
		float average=0;
		for(float n:a){
			sum+=n;	
			average=sum/a.length;
		}
		return average;
	}

	public static void main(String[] args) {
		AverageDemo sum=new AverageDemo();
		float[] arr={15,25,65,80};
		float average=sum.plus(arr);
		System.out.println("数组元素的平均值:"+average);

	}

}
  1. 定义两个重载的方法,分别求圆和长方形的面积。
    任务:
    1、 定义两个求面积的重载方法,圆周率可以使用Math.path这个常量代替
    2、在主方法中调用方法并输出
public class AreaDemo {
	public double area(double a,double b){
		double getArea=a*b;
		return getArea;//返回语句
	}
	public double area(double r){
		double getArea=Math.PI*r*r;
		return getArea;
	}

	public static void main(String[] args) {
		AreaDemo rc = new AreaDemo();
		double r1=5;
		double x=5.5,y=15;
		double area=rc.area(r1);
		double area1=rc.area(x,y);
		System.out.println("圆形的面积为:"+area);
		System.out.println("长方形的面积为:"+area1);

	}

}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值