class Q2 {
public static void main(String[] args) { int[][] a = new int[4][];
for (int i = 0,k=0; i < 4; i++){ a[i] = new int[i+1];
for (int j = 0; j <= i; j++){ a[i][j] = ++k; } }
System.out.print(a[3][3]); }
}
A)0 B)4 C)9 D)10
三、 改错
1、public int m1 (int number[20]){ number = new int[20]; for(int i=0;i 2、以下语句段试图使用数组求1到10之和,语句段在编译运行中是否会出错,若出错是第几句,出错原因是什么?不出错则运行结果是什么? (1) 1) int a[] , sum=0; 2) a = {1,2,3,4,5,6,7,8,9,10}; 3) for(int i=1;i<10;i++){ 4) sum+=a[i]; 5) } 6) System.out.println(\ (2) 1) int sum=0; 2) int[ ] a = {1,2,3,4,5,6,7,8,9,10}; 3) for(int i=1;i<=10;i++){ 4) sum+=a[i]; 5) } 6) System.out.println(\ (3) 1) int sum=0; 2) int[ ] a = new int[10]; 3) for(int i=0 ; i < 10;i++){ 4) sum+=a[i];//未赋值 5) } 6) System.out.println(\ (4) 1) int[ ] a = new int[10], sum = 0 ; 2) a [ 0 ] = 1; 3) for(int i=0 ; i 资料 6) System.out.println(\ (5) 1) int a[ ] = new int[10], sum = 0 ;; 2) for(int i=0 ; i 3) a[i] = i; //逻辑错误,未实现题意要求 4) sum += a[i]; 5) } 6) System.out.println(\ (6) 1) int a[ ] = new int[10], sum = 0 ; 2) for(int i=0 ; i 6) System.out.println(\ 四、 阅读程序 1、 以下代码的输出结果是什么? int x=40; int numbers[]=new int[x]; x=80; System.out.println(“x=”+x); System.out.println(“数组numbers的长度=”+numbers.length); 2、 指出并改正下面代码中的错误? public static void main(String args[]){ double ra[10]; for(int i=0;i ra(i) =Math.random*100; } } 3、 以下代码的功能是查找最小数组元素的首个下标值。指出其中的错误并加以改正。 double min=myArray[0]; int indexOfMin=0; for(int i=1;i<=myArray.length();i++){ if(myArray(i) min = myArray(i); indexOfMin=I; } } 4、 写出下面程序的输出 public class Test{ public static void main(String args[]){ int num =0; int nums[]=new int[1]; m(num,nums); 资料 System.out.println(“num=”+num+”,nums[0]=”+nums[0]); } public static void m(int x,int y[]){ x=5; 5、 写出下面程序的输出 public class Test{ public static void main(String args[]){ int array[][]=new int[5][6]; int x[]={1,2}; array[0]=x; System.out.println(“array[0][1]=”+array[0][1]); } } 五、 编程题 1、 生成0-9之间的100个随机数,并且显示每一个数出现的次数。 提示:用(int)(Math.random()*10)产生0-9之间的随机整数,用一个含有10个整数的数组存放0,1,2,…9出现的次数,数组名为counts。 2、 读入一个整数n,输出杨辉三角形的前n行,杨辉三角形如下: 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 … … 杨辉三角形的特点:(1)第i行有i个元素;(2)每一行的第一个元素和最后一个元素都为1;(3)除了1之外,每个元素的值,都等于上一行同位置的元素以及前一个元素的和。 3、 编写一个程序,读入一个英文句子,分别统计出其中的大写和小写字母个数。 4、 编写两个重载方法,返回一个数组的平均数,它们具有如下的方法声明: public static int getAverage(int array[]); public static double getAverage(double array[]); 5、 输入一个整数n,求小于这个整数的所有质数。 算法:定义一个长度为n的boolean数组,true表示是质数,false表示不是质数。初始均为ture。开始循环执行:(1)找到第一个值为true的下标i;(2)把所有下标为i的倍数的数组元素值置为false。直到扫描完数组中所有的数值,最后遍历数组,如果下标为i的数组元素值为true,则说明i为质数。 第七章 面向对象 资料 知识点汇总 1、类与对象 ? 类是对某一事物的抽象描述,用于描述多个对象的共同特征, 它是对象的模型。 ? 对象用于表示现实中该类事物的个体,它是类的实例。 2、定义类 ? 面向对象最核心的是对象,为了在程序中创建对象,首先需 要定义一个类。 ? 类是对象的抽象,它用于描述一组对象的共同特征和行为 ? 类中可以定义成员变量和成员方法。 ? 成员变量用于描述对象的特征,也称为属性。 ? 成员方法用于描述对象的行为,也称为方法。 修饰符 class 类名{ 成员变量; // 修饰符 数据类型 成员变量名 [=初始值]; 成员方法(); // 修饰符 返回类型 方法名( [参数列表]){ // 方法体; // } } ? 修饰符:public、private、default、abstract、fanal、static 3、对象的创建与使用 ? 类名 对象名称= new 类名();//Person p = new Person();? 对象引用.成员变量 ? 对象引用.成员方法() ? 可以不定义对象的引用名称,而直接调用这个对象的方法, 这样的对象叫做匿名对象,如:new Dog().jump(); 调用一次之后就再也找不到了,成为垃圾对象。 4、类封装的方法 ? 将属性设置为private(私有属性) ? 设置public(公共方法),通过公共方法设置或获取属性的值 ? 通常的写法为setXxx,getXxx 5、构造方法 ? 构造方法是类的一个特殊成员,它会在类的实例化对象时被 自动调用。 ? 构造方法的名字必须与类名相同。 ? 构造方法名的前面没有任何返回类型的声明。 ? 在构造方法中不能使用return语句。 ? 如果类中没有构造方法,编译器会自动加一个方法体为空, 方法名与类名相同的构造方法。 资料 ??每个类至少有一 个构造方法,如果没有定义构造方法,系统会自动创建一个默认的构造方法,这个构造方法没有参数,方法体内也没有任何代码。如果类中已经声