第七题:
1.定义方法 isSXH(int num)
功能:判断数字num是否是水仙花数,如果是返回true,如果不是返回false
2.在主方法中,键盘录入数据,调用isSXH方法,判断传入的数据是否为水仙花数,如果是就输出"xxx为水仙花数",否则就输出"xxx不是水仙花数"
演示:
请输入一个三位整数:
100
100不是水仙花数
import java.util.Scanner; public class TTst01 { public static void main (String[] args) { Scanner scanner = new Scanner(System.in); System.out.println("请输入一个三位整数:"); int i = scanner.nextInt(); if (isSXH(i) == i) { System.out.println(i + "是水仙花数"); } else { System.out.println(i + "不是水仙花数"); } } public static int isSXH(int num){ int hb=num/100%10; int tn=num/10%10; int a=num%10; if (hb*hb*hb+tn*tn*tn+a*a*a==num) { return num; } return 0; } }
第八题:
1.模拟计算器功能,对键盘录入的两个int类型的数据进行加、减、乘、除的运算,并打印运算结果
要求:
(1)键盘录入三个整数,其中前两个整数代表参加运算的数据,
第三个整数为要进行的运算(0:表示加法运算,1:表示减法运算,2:表示乘法运算,3:表示除法运算)
(2)演示格式如下:
请输入第一个整数:30
请输入第二个整数:40
请输入您要进行的运算(0:表示加法运算,1:表示减法运算,2:表示乘法运算,3:表示除法运算):0
控制台输出:30+40=70
import java.util.Scanner; public class TTst02 { public static void main(String[] args) { int a; int b; int arc; Scanner scanner = new Scanner(System.in); System.out.print("请输入第1个数:"); a = scanner.nextInt(); System.out.print("请输入第2个数:"); b = scanner.nextInt(); System.out.print("请输入需要进行的运算:(输入0:加法,输入1:" + "减法,输入2:乘法,输入3:除法,):"); arc = scanner.nextInt(); arithmetic(a, b, arc); } public static void arithmetic(int a, int b, int arc) { if (arc == 0) { System.out.println(a + b); } else if (arc == 1) { System.out.println(a - b); } else if (arc == 2) { System.out.println(a * b); } else if (arc == 3) { System.out.println(a / b); } } }
第九题:
分析以下需求,并用代码实现
1.创建两个长度为5的数组,数组内元素为随机生成的 1-100之间的偶数。(r.nextInt(50)+1)*2
2.定义一个方法hebin(描述如下),传入两个数组,方法中将两个数组元素合并到一个新数组中,并且将新数组的内容打印到控制台上
import java.util.Arrays; import java.util.Random; public class TTst03 { public static void main(String[] args){ int [] a=new int[5]; int [] b=new int[5]; int []c={0}; c= Arrays.copyOf(c,a.length+b.length); Random random = new Random( ); for (int j= 0; j< a.length; j++) { a[j]=(random. nextInt( 50)+1*2); b[j]=(random. nextInt( 50)+1*2); } System.out.println(Arrays.toString(a)); System.out.println(Arrays.toString(b)); for (int i = 0; i< a.length; i++) { c[i]=a[i]; } for (int i = 0; i< b.length; i++){ c[a.length+i]=b[i]; } System.out.println(Arrays.toString(c)); } }
第十题:
分析以下需求,并用代码实现
1.创建一个储存整数的集合,键盘录入5个数据存入集合
2.遍历集合,将集合中大于10的元素打印到控制台上,并求和.
import java.util.ArrayList; import java.util.Scanner; public class TTst04 { public static void main(String[ ] args) { int sum=0 ; ArrayList<Integer> list = new ArrayList<>(); Scanner scanner = new Scanner(System.in); for (int i = 0; i<5 ; i++){ System.out.print("请输入一个整数:"); list.add(scanner.nextInt()); } for (int i =0; i < list.size(); i++) { if (list.get(i)>10){ sum+=list.get(i); } } System.out.println("集合中大于10的值的和为: "+sum); } }
第十一题:
分析一下需求,并用代码实现
1.创建一个储存整数的集合,随机产生10个两位数存入集合
2.定义一个方法,将集合传入,筛选出其中所有小于50的元素,存入新的集合中,将新集合返回
3.在主方法中,调用2中的方法,将1中的集合传入,得到返回的集合,将返回的集合遍历打印.
import java.util.ArrayList; import java.util.List; import java.util.Random; public class TTst05 { public static void main(String[] args) { ArrayList<Integer> list = new ArrayList<>(); Random random = new Random(); for (int i = 0; i < 100; i++) { int a = (random.nextInt(99) + 1); if (a >= 10) { list.add(a); } if (list.size() == 10) { break; } } System.out.println(list); List<Integer> newList=newList(list); System.out.println(newList); } public static List<Integer> newList(ArrayList<Integer>list){ ArrayList<Integer> newLi=new ArrayList<Integer>(); for (int i = 0; i<list.size();i++) { if (list.get(i)<50){ newLi.add(list.get(i)); } } return newLi; } }
第十二题:
根据要求完成以下功能:
a.定义ArrayList集合,存入如下整数:
11,22, 55,66, 77 , 88
b.遍历集合,删除大于60的元素,在控制台打印输出删除后的集合中所有元素
import java.util.ArrayList; public class TTst06 { public static void main(String[] args) { ArrayList<Integer> list = new ArrayList<Integer>(){ { add(11); add(22); add(55); add(66); add(77); add(88); } }; for (int i = 0; i < list.size(); i++) { if (list.get(i)>60){ list.remove(list.get(i)); i--; } } System.out.println(list); } }
第十三题:
按要求在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
import java.util.Arrays; import java.util.Random; import java.util.Scanner; public class TTst07 { public static void main(String[] args){ int []arr=new int[5]; Random random = new Random(); Scanner scanner = new Scanner(System.in); for (int i = 0; i < arr.length; i++) { arr[i]=random.nextInt( 100); } System.out.println("随机生成的数组元素为: "+ Arrays.toString(arr)); System.out.print("请输入2-5之间的一个数字: "); int a=scanner.nextInt(); for(int i = 0; i < arr.length; i++) { if (arr[i]%a==0){ System.out.print(arr[i]+" " ); } } } }