软件2018-2练习1 #Java#
发布时间:2020-12-15 07:49:52 所属栏目:Java 来源:网络整理
导读:7-1 一个整数各个位上的最大数字(10 分)/ 考点 基本输入输出,流程控制(循环) 代码 import java.io.*;import java.util.*;public class Main { static final Scanner cin = new Scanner(new BufferedInputStream(System.in)); public static void main(Strin
7-1 一个整数各个位上的最大数字(10 分)/考点基本输入输出,流程控制(循环) 代码import java.io.*; import java.util.*; public class Main { static final Scanner cin = new Scanner(new BufferedInputStream(System.in)); public static void main(String[] args) { String a = cin.next(); int ans = 0; for (int i = 0; i < a.length(); ++i) { int tmp = a.charAt(i) - '0'; ans = Math.max(tmp,ans); } System.out.println(ans); } } 7-2 十进制转二进制 (10 分)。考点基本输入输出,流程控制(循环),二进制的计算方法 代码import java.io.*; import java.util.*; public class Main { static final Scanner cin = new Scanner(new BufferedInputStream(System.in)); public static void main(String[] args) { int a = cin.nextInt(); Vector<Integer> vec = new Vector<>(); while (a != 0) { vec.add(a & 1); a >>= 1; } for (int i = vec.size() - 1; i >= 0; --i) System.out.print(vec.get(i)); } } 7-3 判断回文 (10 分)考点基本输入输出,流程控制(循环,分支),中途相遇法 代码import java.io.*; import java.util.*; public class Main { static final Scanner cin = new Scanner(new BufferedInputStream(System.in)); public static void main(String[] args) { String str = cin.next(); int i = 0,j = str.length() - 1; boolean ans = true; while (i <= j) { if (str.charAt(i) != str.charAt(j)) { ans = false; break; } ++i; --j; } System.out.print(ans ? "Yes" : "No"); } } 7-4 购买第3便宜的商品 (10 分)考点基本输入输出,流程控制(循环,分支),TreeSet的基本使用方法 代码import java.io.*; import java.util.*; public class Main { static final Scanner cin = new Scanner(new BufferedInputStream(System.in)); public static void main(String[] args) { TreeSet<Integer> se = new TreeSet<>(); int n = cin.nextInt(); for (int i = 0; i < n; i++) se.add(cin.nextInt()); Iterator it = se.iterator(); int cnt = 0; while (it.hasNext()) { if (++cnt == 3) { System.out.println(it.next()); break; } else it.next(); } if (cnt != 3) System.out.println(-1); } } 7-5 n个a数字求和 (15 分)考点基本输入输出,流程控制(循环) 代码import java.io.*; import java.util.*; public class Main { static final Scanner cin = new Scanner(new BufferedInputStream(System.in)); public static void main(String[] args) { int a = cin.nextInt(); int n = cin.nextInt(); int ans = 0,tmp = a; for(int i = 0; i < n; ++i){ ans += tmp; tmp *= 10; tmp += a; } System.out.print(ans); } } 7-6 完数 (15 分)考点基本输入输出,流程控制(循环),静态函数的编写,解耦合思想,Vector的基本使用方法 代码import java.io.*; import java.util.*; public class Main { static final Scanner cin = new Scanner(new BufferedInputStream(System.in)); public static void main(String[] args) { int n = cin.nextInt(); Vector<Integer> vec = new Vector<>(); for(int i = 2; i <= n;++i) if(isPrefectNum(i)) vec.add(i); Iterator<Integer> it = vec.iterator(); boolean flag = true; while (it.hasNext()) { if(flag) flag = false; else System.out.print(","); System.out.print(it.next()); } } static public boolean isPrefectNum(int num) { int sum = 0; for (int i = 1; i < num; ++i) if (num % i == 0) sum += i; return sum == num; } } 7-7 N个数的排序与查 (15 分)考点基本输入输出,流程控制(循环),数组/Vector的基本使用方法,排序库函数 代码import java.io.*; import java.util.*; public class Main { static final Scanner cin = new Scanner(new BufferedInputStream(System.in)); public static void main(String[] args) { int n = cin.nextInt(); Vector<Integer> vec = new Vector<>(); for (int i = 0; i < n; ++i) vec.add(cin.nextInt()); Collections.sort(vec); boolean NotFind = true; int num = cin.nextInt(); for (int i = 0; i < n; ++i) if (vec.get(i) == num) { System.out.print(i + 1); NotFind = false; } if (NotFind) System.out.print(-1); } } 7-8 集合求交 (15 分)考点基本输入输出,流程控制(循环),TreeSet的基本使用方法 代码import java.io.*; import java.util.*; public class Main { static final Scanner cin = new Scanner(new BufferedInputStream(System.in)); public static void main(String[] args) { Set<Integer> set1 = new TreeSet<>(); Set<Integer> set2 = new TreeSet<>(); for (int i = 0; i < 3; ++i) set1.add(cin.nextInt()); for (int i = 0; i < 3; ++i) set2.add(cin.nextInt()); set1.retainAll(set2); System.out.print(set1.size()); } } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |