第一题:
1.定义方法 isSXH(int num)
功能:判断数字num是否是水仙花数,如果是返回true,如果不是返回false
2.在主方法中,键盘录入数据,调用isSXH方法,判断传入的数据是否为水仙花数,如果是就输出"xxx为水仙花数",否则就输出"xxx不是水仙花数"
演示:
请输入一个三位整数:
100
100不是水仙花数
package com.ben; import java.util.Scanner; public class Demo1 { static boolean isSXH(int num){ int ge =num%10; int shi=num/10%10; int bai=num/100; if (num==ge*ge*ge+shi*shi*shi+bai*bai*bai) { return true; } else { return false; } } public static void main(String[] args) { Scanner sc= new Scanner(System.in); System.out.println("请输入一个三位整数:"); int val1 = sc.nextInt(); if (isSXH(val1)==true) { System.out.println(val1+"为水仙花数"); } else { System.out.println(val1+"不是水仙花数"); } } }
第二题:
1.模拟计算器功能,对键盘录入的两个int类型的数据进行加、减、乘、除的运算,并打印运算结果
要求:
(1)键盘录入三个整数,其中前两个整数代表参加运算的数据,
第三个整数为要进行的运算(0:表示加法运算,1:表示减法运算,2:表示乘法运算,3:表示除法运算)
(2)演示格式如下:
请输入第一个整数:30
请输入第二个整数:40
请输入您要进行的运算(0:表示加法运算,1:表示减法运算,2:表示乘法运算,3:表示除法运算):0
控制台输出:30+40=70
package com.ben; import java.util.Scanner; public class Demo2 { public static void main(String[] args) { Scanner sc= new Scanner(System.in); System.out.print("请输入第一个整数:"); int i1 = sc.nextInt(); System.out.print("请输入第二个整数:"); int i2 = sc.nextInt(); System.out.println("请输入您要进行的运算(0:表示加法运算,1:表示减法运算,2:表示乘法运算,3:表示除法运算):"); int i3 =sc.nextInt(); if(i3==0){ System.out.println(i1+"+"+i2+"="+(i1+i2)); }else if (i3==1){ System.out.println(i1+"-"+i2+"="+(i1-i2)); }else if (i3==2){ System.out.println(i1+"*"+i2+"="+(i1*i2)); }else if (i3==3){ System.out.println(i1+"/"+i2+"="+(i1/i2)); } } }
第三题:
分析以下需求,并用代码实现
1.创建两个长度为5的数组,数组内元素为随机生成的 1-100之间的偶数。(r.nextInt(50)+1)*2
2.定义一个方法hebin(描述如下),传入两个数组,方法中将两个数组元素合并到一个新数组中,并且将新数组的内容打印到控制台上
package com.ben; import java.util.ArrayList; import java.util.Random; public class Demo3 { static void hebin(int[] arr1,int[] arr2){ ArrayList arr3=new ArrayList(); for (int i = 0; i < arr1.length; i++) { arr3.add(arr1[i]); arr3.add(arr2[i]); } System.out.println(arr3); } public static void main(String[] args) { int[] arr1=new int[5]; int[] arr2=new int[5]; Random ra=new Random(); for (int i = 0; i < 5; i++) { arr1[i]=(ra.nextInt(50)+1)*2; arr2[i]=(ra.nextInt(50)+1)*2; } hebin(arr1,arr2); } }
第四题:
分析以下需求,并用代码实现
1.创建一个储存整数的集合,键盘录入5个数据存入集合
2.遍历集合,将集合中大于10的元素打印到控制台上,并求和.
package com.ben; import java.util.ArrayList; import java.util.Scanner; public class Demo4 { public static void main(String[] args) { ArrayList<Integer> arr=new ArrayList<Integer>(); Scanner sc=new Scanner(System.in); int sum=0; for (int i = 1; i <= 5; i++) { System.out.println("请输入第"+i+"个数:"); int i1 = sc.nextInt(); arr.add(i1); } System.out.println(); System.out.println("大于10的元素是:"); for (int i = 0; i < arr.size(); i++) { int num = arr.get(i); if (num >10) { sum+=num; System.out.println(num); } } System.out.println("大于10的元素和是:"+sum); } }
第五题:
分析一下需求,并用代码实现
1.创建一个储存整数的集合,随机产生10个两位数存入集合
2.定义一个方法,将集合传入,筛选出其中所有小于50的元素,存入新的集合中,将新集合返回
3.在主方法中,调用2中的方法,将1中的集合传入,得到返回的集合,将返回的集合遍历打印.
package com.ben; import java.util.ArrayList; import java.util.Random; public class Demo5 { static ArrayList arr(int[] arr){ ArrayList arr1=new ArrayList(); for (int i = 0; i < arr.length; i++) { if (arr[i] < 50) { arr1.add(arr[i]); } } return arr1; } public static void main(String[] args) { ArrayList arr3=new ArrayList(); Random ra=new Random(); int[] arr=new int[10]; for (int i = 0; i < arr.length; i++) { arr[i]=ra.nextInt(98)+1; if (arr[i]/10==0) { i--; } } System.out.println("生成的数是:"); for (int i = 0; i < arr.length; i++) { System.out.println(arr[i]); } ArrayList arr4 = arr(arr); System.out.println("所有小于50的元素:"); for (int i = 0; i < arr4.size(); i++) { System.out.println(arr4.get(i)); } } }
第六题:
根据要求完成以下功能:
a.定义ArrayList集合,存入如下整数:
11,22, 55,66, 77 , 88
b.遍历集合,删除大于60的元素,在控制台打印输出删除后的集合中所有元素
package com.ben; import java.util.ArrayList; public class Demo6 { public static void main(String[] args) { ArrayList<Integer> arr=new ArrayList<Integer>(); arr.add(11); arr.add(22); arr.add(55); arr.add(66); arr.add(77); arr.add(88); for (int i = 0; i < arr.size(); i++) { for (int j = 0; j < arr.size(); j++) { int num = arr.get(j); if (num > 60) { arr.remove(j); } } } System.out.println(arr); } }
第七题:
按要求在main方法中完成以下功能:
a.定义一个长度为5的int型数组arr,数组元素为1-99(范围包含1和99)之间的随机数
b.提示用户输入2-5之间的一个数字num(num范围包括2和5,不需要代码判断)
c.遍历数组arr,筛选出数组中元素是num倍数的数组元素并输出
示例如下:
随机生成的数组元素为:
52 20 58 9 10
请输入2-5之间的一个数字:
5
符合条件的元素为:
20 10
package com.ben; import java.util.Random; import java.util.Scanner; public class Demo7 { public static void main(String[] args) { Random ra=new Random(); Scanner sc=new Scanner(System.in); int[] arr=new int[5]; System.out.println("随机生成的数组元素为:"); for (int i = 0; i < arr.length; i++) { arr[i]=ra.nextInt(98)+1; System.out.print(arr[i]+" "); } System.out.println(); System.out.println("输入2-5之间的一个数字:"); int i = sc.nextInt(); System.out.println("符合条件的元素为:"); for (int j = 0; j < arr.length; j++) { if (arr[j]%i==0) { System.out.println(arr[j]); } } } }