1. B,D
A 后面赋值是字符,定义是字符串
E编译错误
2. blue 布尔型未赋值时默认false
3. 1 3 5 7
4. 本质:数组扩容加定位 先确定插入元素的索引,然后扩容
public class homework04 {
public static void main(String[] args){
int[] arr1 = {10,12,45,90};
int num = 91;
int index = -1;
//先确定元素插入位置
for (int i = 0; i < arr1.length; i++){
if (num <= arr1[i]){
index = i;
break;
}
}
//如果index等于-1,说明数组里的值全小于num,插入要数组末尾
if (index == -1){
index = arr1.length;
}
System.out.println("要插入元素的索引为:"+index);
System.out.println("插入元素后的数组为:");
//扩容,先创建新数组
int[] arr2 = new int[arr1.length+1];
for (int i =0, j=0; i < arr2.length; i++){
if (i != index){
arr2[i] = arr1[j];
j++;
}
else {
arr2[i] = num;
}
System.out.print(arr2[i]+"\t");
}
}
}
5. 随机生成10个整数(1~100的范围)保存到数组,并倒序打印以及求平均值、求最大值和最大值的下标、并查找里面是否有8
import java.util.Random;
public class homework05 {
public static void main(String[] args){
Random myrandom = new Random();
int[] arr = new int[10];
System.out.println("生成的十个随机数如下:");
for (int i = 0; i < 10; i++){
arr[i] = myrandom.nextInt(100)+1;
System.out.print(arr[i]+"\t");
}
System.out.println();
double sum = arr[0];
int max = arr[0];
int maxIndex = 0;
for (int i = 1; i < arr.length; i++){
sum += arr[i];
if (max < arr[i]){
max = arr[i];
maxIndex = i;
}
}
System.out.println("平均值为:"+sum/arr.length);
System.out.println("最大值为:"+max);
System.out.println("最大值下标为:"+maxIndex);
System.out.println("(倒序)排序结果如下:");
int temp = 0;
for (int i = 0; i<(arr.length-1); i++){
for (int j = 0; j < (arr.length-1-i); j++){
if (arr[j] < arr[j+1]){
temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
}
}
}
for (int i = 0; i < 10; i++){
System.out.print(arr[i]+"\t");
}
}
}
6. 试写出以下代码的打印结果
char[] arr1 = {'a','z','b','c'};
char[] arr2=arr1;
arr1[2]='韩';
for(int i=0;i<arr2.length; i+ +){
System.out.println(arr1[i] +","+ arr2[i]);
}
a,a z,z 韩,韩 c,c
7. 写出冒泡排序的代码
public class BubbleSort {
public static void main(String[] args){
int[] arr = {24, 69, 80, 57, 13, -1, 30, 200, -110};
int temp = 0; //辅助交换的变量
for (int i = 0; i < arr.length-1; i++){
for (int j = 0; j < arr.length-1-i; j++){
if (arr[j] > arr[j+1]){
temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
}
}
System.out.println("第"+(i+1)+"轮排序结果");
for (int j = 0; j < arr.length; j++){
System.out.print(arr[j]+"\t");
}
System.out.println();
}
System.out.println("排序后的数组如下");
for (int i = 0; i < arr.length; i++){
System.out.print(arr[i]+"\t");
}
}
}