一、每天练十道题目找找手感
1、判断语句练习题:https://blog.csdn.net/m0_55586329/article/details/122441587
2、循环语句练习题:https://blog.csdn.net/m0_55586329/article/details/122451061
3、判断语句理论知识:https://blog.csdn.net/m0_55586329/article/details/116331989
4、数组理论实践知识(强烈推荐观看):https://blog.csdn.net/m0_55586329/article/details/116840485
Java数组练习题
- 一、每天练十道题目找找手感
- 1、已知数组{1, 3, 6, 7, 2, 5, 9, 0},输出数组的最大数字和最小数字。
- 2、已知数组{1, 3, 6, 7, 2, 5, 9, 0},如何将数组进行从小到大的排序?最后打印出来。
- 3、已知数组:{1, 2, 3, 4, 5, 6, 7, 8, 9, 0},编写程序实现猜数字:输入一个数字,输出该数字是否存在于该数组中?
- 4、创建一个二维整数数组,3行3列,第一列值1,2,3,第二列3,2,1,第三列0,0,0,循环输出数组每一个元素。
- 5、创建一个长度为10的整数数组,使用控制台扫描器给这个数组进行赋值,最后计算所有元素的和、平均值。
- 6、游戏人物可以穿戴的装备数量为7个,有一个初始人物装备为{null, null, "记忆头盔", "裁决之杖", null, "", "普通草鞋"}, 其中null表示该位置没有穿戴装备。现在要求给游戏人物添加3件装备,装备名字由控制台输入,只能装备在没有穿戴的位置。最后输出所有装。
- 7、定义一个整数数组,长度为15,每个元素的值为随机数,最后打印出数组的每一个元素
- 8、从控制台输入一个数字表示某个班学生人数,然后创建一个表示该班级所有学生名字的字符串数组,并使用控制台输入学生名字赋值给数组的每一个元素,最后输出所有学生姓名。
- 9、定义一个长度为5的数组值为{1,2,3,4,5},另外一个数组值为{10, 20,30, 40,50}, 使用for循环合并拼接成一个新的数组(长度为两个数组长度之和)
- 10、定义一个长度为5的字符串数组。循环输入5个姓名。然后再输入一个用户的姓名,检查数组中是否有这个人的姓名,并输出所在下标,然后修改该姓名为一个新的名字,这个名字由控制台输入,最后打印所有姓名。
1、已知数组{1, 3, 6, 7, 2, 5, 9, 0},输出数组的最大数字和最小数字。
public class Demo01 {
public static void main(String[] args) {
int[] arrays = {1, 3, 6, 7, 2, 5, 9, 0};
// 方法一:遍历数组的方式
// 先定义最大值为第一位先,然后进行比较
int max = arrays[0];
int min = arrays[0];
for (int i = 0; i < arrays.length; i++) {
if (max < arrays[i]) {
max = arrays[i];
}
if (min > arrays[i]) {
min = arrays[i];
}
}
System.out.println("最大值Max=" + max + " 最小值Min=" + min);
// 方法二:使用封装好的方法
System.out.println("Max=" + Arrays.stream(arrays).max().getAsInt() + " Min=" + Arrays.stream(arrays).min().getAsInt());
}
}
2、已知数组{1, 3, 6, 7, 2, 5, 9, 0},如何将数组进行从小到大的排序?最后打印出来。
public class Demo02 {
public static void main(String[] args) {
int[] arrays = {1, 3, 6, 7, 2, 5, 9, 0};
// 方法一:选择排序
for (int i = 0; i < arrays.length; i++) {
for (int j = i + 1; j < arrays.length; j++) {
if (arrays[i] >= arrays[j]) {
int temp = arrays[i];
arrays[i] = arrays[j];
arrays[j] = temp;
}
}
}
System.out.println("方法一: " + Arrays.toString(arrays));
// 方法二:简单的一行代码 【注】:会改变数组的,慎用
Arrays.sort(arrays);
System.out.println(Arrays.toString(arrays));
}
}
3、已知数组:{1, 2, 3, 4, 5, 6, 7, 8, 9, 0},编写程序实现猜数字:输入一个数字,输出该数字是否存在于该数组中?
public class Demo03 {
public static void main(String[] args) {
int[] arrays = {1, 2, 3, 4, 5, 6, 7, 8, 9, 0};
Scanner scanner = new Scanner(System.in);
int input = scanner.nextInt();
for (int i = 0; i < arrays.length; i++) {
if (arrays[i] == input) {
System.out.println("true");
}
}
}
}
4、创建一个二维整数数组,3行3列,第一列值1,2,3,第二列3,2,1,第三列0,0,0,循环输出数组每一个元素。
public class Demo04 {
public static void main(String[] args) {
int[][] arrays = new int[][]{{1, 2, 3}, {3, 2, 1}, {0, 0, 0}};
for (int i = 0; i < arrays.length; i++) {
for (int j = 0; j < arrays[i].length; j++) {
System.out.print(arrays[i][j] + " ");
}
}
}
}
5、创建一个长度为10的整数数组,使用控制台扫描器给这个数组进行赋值,最后计算所有元素的和、平均值。
public class Demo05 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int[] arrays = new int[10];
int sum = 0;
for (int i = 1; i <= arrays.length; i++) {
System.out.print("请输入第" + i + "个整数:");
arrays[i - 1] = scanner.nextInt();
sum += arrays[i - 1];
}
System.out.println("元素的和:" + sum + " 平均值:" + sum / arrays.length);
}
}
6、游戏人物可以穿戴的装备数量为7个,有一个初始人物装备为{null, null, “记忆头盔”, “裁决之杖”, null, “”, “普通草鞋”}, 其中null表示该位置没有穿戴装备。现在要求给游戏人物添加3件装备,装备名字由控制台输入,只能装备在没有穿戴的位置。最后输出所有装。
public class Demo06 {
public static void main(String[] args) {
String[] arrays = new String[]{null, null, "记忆头盔", "裁决之杖", null, "", "普通草鞋"};
Scanner scanner = new Scanner(System.in);
for (int i = 0; i < arrays.length; i++) {
if (arrays[i] == null) {
System.out.print("请武装好装备:");
arrays[i] = scanner.next();
}
}
System.out.println(Arrays.toString(arrays));
}
}
7、定义一个整数数组,长度为15,每个元素的值为随机数,最后打印出数组的每一个元素
public class Demo07 {
public static void main(String[] args) {
Random random = new Random();
int[] arrays = new int[15];
for (int i = 0; i < arrays.length; i++) {
arrays[i] = random.nextInt();
}
System.out.println(Arrays.toString(arrays));
}
}
8、从控制台输入一个数字表示某个班学生人数,然后创建一个表示该班级所有学生名字的字符串数组,并使用控制台输入学生名字赋值给数组的每一个元素,最后输出所有学生姓名。
public class Demo08 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入班级学生的人数:");
int num = scanner.nextInt();
String[] stuArrays = new String[num];
for (int i = 1; i <= stuArrays.length; i++) {
System.out.print("请输入" + i + "位学生的名字:");
stuArrays[i - 1] = scanner.next();
}
System.out.println(Arrays.toString(stuArrays));
}
}
9、定义一个长度为5的数组值为{1,2,3,4,5},另外一个数组值为{10, 20,30, 40,50}, 使用for循环合并拼接成一个新的数组(长度为两个数组长度之和)
public class Demo09 {
public static void main(String[] args) {
// 考察对数组性质的理解,数组的长度一旦定义了就不能改变,因此需要新建一个数组
int[] arrays01 = {1, 2, 3, 4, 5};
int[] arrays02 = {10, 20, 30, 40, 50};
int[] newArrays = new int[arrays01.length + arrays02.length];
for (int i = 0; i < newArrays.length; i++) {
if (i >= arrays01.length) {
newArrays[i] = arrays02[i - arrays01.length];
} else {
newArrays[i] = arrays01[i];
}
}
System.out.println(Arrays.toString(newArrays));
}
}
10、定义一个长度为5的字符串数组。循环输入5个姓名。然后再输入一个用户的姓名,检查数组中是否有这个人的姓名,并输出所在下标,然后修改该姓名为一个新的名字,这个名字由控制台输入,最后打印所有姓名。
public class Demo10 {
public static void main(String[] args) {
String[] arrays = new String[5];
Scanner scanner = new Scanner(System.in);
int index = 0;
for (int i = 0; i < arrays.length; i++) {
System.out.print("请输入" + (i + 1) + "位用户的姓名:");
arrays[i] = scanner.next();
}
// 检查数组是否有该姓名
System.out.print("请输入你要查找的姓名:");
String name = scanner.next();
for (int i = 0; i < arrays.length; i++) {
if (name.equals(arrays[i])) {
index = i;
System.out.print("请输入新名字:");
arrays[i] = scanner.next();
}
}
System.out.println(Arrays.toString(arrays) + "该用户的下标为:" + index);
}
}
喜欢的朋友可以点个赞支持一下!!!