java经典算法50题答案
java 经典笔试算法题
java 经典笔试算法题一、排序算法1. 实现一个基于Java的快速排序算法。
答:快速排序是一种常用的排序算法,其核心思想是分治法。
首先选择一个基准元素,将数组分成两部分,一部分小于基准元素,一部分大于基准元素。
然后递归地对这两部分继续进行快速排序,直到整个数组有序。
2. 实现一个稳定的冒泡排序算法。
答:冒泡排序是一种简单的排序算法,通过重复地遍历待排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。
稳定的冒泡排序算法是指在排序过程中,相同元素的相对位置不会改变。
3. 实现一个选择排序算法。
答:选择排序是一种简单直观的排序算法。
其工作原理是每一次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置,直到全部待排序的数据元素排完。
二、字符串操作算法1. 实现一个函数,将一个字符串反转。
答:可以使用StringBuilder类的reverse()方法来实现字符串的反转。
2. 实现一个函数,将一个字符串中的所有大写字母转换为小写字母,其余字符保持不变。
答:可以使用String类的replaceAll()方法和toLowerCase()方法来实现。
3. 实现一个函数,将一个字符串按空格分割成单词数组,并删除空字符串和null字符串。
答:可以使用split()方法和Java 8的流来处理。
三、数据结构算法1. 实现一个单向链表,并实现插入、删除、查找和打印链表的功能。
答:单向链表是一种常见的数据结构,可以通过定义节点类和链表类来实现。
插入、删除、查找和打印链表的功能可以通过相应的方法来实现。
2. 实现一个二叉搜索树(BST),并实现插入、查找、删除节点的功能。
答:二叉搜索树是一种常见的数据结构,它具有唯一的高度特性。
插入、查找和删除节点的功能可以通过相应的方法来实现,如左旋、右旋、递归等。
3. 实现一个哈希表(HashMap),并实现插入、查找和删除键值对的功能。
答:HashMap是一种基于哈希表的映射数据结构,它通过哈希码的方式将键映射到对应的值上。
JAVA经典算法50题(3)【面试+工作】
JAVA经典算法50题(3)【面试+工作】JAVA经典算法50题(3)【面试+工作】【程序21】题目:求1+2!+3!+...+20!的和。
1.程序分析:此程序只是把累加变成了累乘。
public class Demo21 {public static void main(String[] args) {long sum = 0;long fac = 1;for (int i = 1; i <= 20; i++) {fac = fac * i;sum += fac;}System.out.println(sum);}}【程序22】题目:利用递归方法求5!。
1.程序分析:递归公式:f(n)=f(n-1)*4!import java.util.Scanner;public class Demo22 {public static long fac(int n) {long value = 0;if (n == 1 || n == 0) {value = 1;} else if (n > 1) {value = n * fac(n - 1);}return value;}public static void main(String[] args) {System.out.println("请输入一个数:");Scanner in = new Scanner(System.in);int n = in.nextInt();System.out.println(n + "的阶乘为:" + fac(n));}}【程序23】题目:有5个人坐在一起,问第五个人多少岁?他说比第4个人大2岁。
问第4个人岁数,他说比第3个人大2岁。
问第三个人,又说比第2人大两岁。
问第2个人,说比第一个人大两岁。
最后问第一个人,他说是10岁。
请问第五个人多大?1.程序分析:利用递归的方法,递归分为回推和递推两个阶段。
java基础50道经典练习题及答案
java基础50道经典练习题及答案《Java基础50道经典练习题及答案》Java作为一种广泛应用于软件开发的编程语言,对于初学者来说,掌握其基础知识是非常重要的。
为了帮助大家更好地学习和掌握Java基础知识,我们整理了50道经典的练习题及答案,希望能够帮助大家更好地理解和掌握Java编程。
1. 请写出Java中的8种基本数据类型。
2. 什么是Java中的包(package)?3. Java中的“==”和“equals()”有什么区别?4. 什么是Java中的多态(polymorphism)?5. 请写出Java中的四种访问修饰符及其作用。
6. 什么是Java中的接口(interface)?7. 请写出Java中的四种循环语句。
8. 什么是Java中的异常处理(exception handling)?9. Java中的“String”和“StringBuffer”有什么区别?10. 请写出Java中的三种注释方式。
这些练习题涵盖了Java基础知识的各个方面,包括数据类型、包、运算符、多态、访问修饰符、接口、循环语句、异常处理、字符串处理等内容。
通过做这些练习题,可以帮助大家更好地理解和掌握Java编程的基础知识。
在学习Java编程的过程中,不仅要掌握理论知识,还要多做练习,多动手实践。
只有通过实际操作,才能更好地理解和掌握Java编程的各种知识点。
希望大家能够认真对待这些练习题,多加练习,相信一定能够取得不错的成绩。
最后,希望大家在学习Java编程的过程中,保持耐心和坚持,相信通过不懈的努力,一定能够掌握好Java编程的基础知识,成为一名优秀的Java程序员。
祝大家学习进步,早日掌握Java编程!。
经典的JAVA算法题及答案
经典的JAVA算法题及答案1.使用Java语言编写代码,将一个正整数分解质因数,例如:输入90,打印输出90=2*3*3*5。
答案:public class Math{public static void main(String[] args){int n,i;System.out.println("\nplease input a number:\n");Scanner input=new Scanner(System.in);n=input.nextInt();System.out.println(n);for(i=2;i<=n;i++){while(n!=i){if(n%i==0){System.out.println(i);n=n/i;}else{break;}}}System.out.println(n);}}2.题目如下:用1、2、2、3、4、5这六个数字,用java写一个main函数,打印出所有不同的排列,如:512234、412345等,要求:"4"不能在第三位,"3"与"5"不能相连。
static int[] bits = new int[] { 1, 2, 3, 4, 5 };/*** @param args*/public static void main(String[] args) {sort("", bits);}private static void sort(String prefix, int[] a) {if (a.length == 1) {System.out.println(prefix + a[0]);}for (int i = 0; i < a.length; i++) {sort(prefix + a, copy(a, i));}}private static int[] copy(int[] a,int index){int[] b = new int[a.length-1];System.arraycopy(a, 0, b, 0, index);System.arraycopy(a, index+1, b, index, a.length-index-1);return b;}3.编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串。
JAVA算法编程题全集(50题及答案)
程序1。
题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?//这是一个菲波拉契数列问题public class lianxi01 {public static void main(String[] args) {System.out.println("第1个月的兔子对数: 1");System.out.println("第2个月的兔子对数: 1");int f1 = 1, f2 = 1, f, M=24;for(int i=3; i<=M; i++) {f = f2;f2 = f1 + f2;f1 = f;System.out.println("第" + i +"个月的兔子对数: "+f2);}}}。
程序2。
题目:判断101-200之间有多少个素数,并输出所有素数。
程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除,则表明此数不是素数,反之是素数。
public class lianxi02 {public static void main(String[] args) {int count = 0;for(int i=101; i<200; i+=2) {boolean b = false;for(int j=2; j<=Math.sqrt(i); j++){if(i % j == 0) { b = false; break; }else { b = true; }}if(b == true) {count ++;System.out.println(i );}}System.out.println( "素数个数是: " + count);}}。
程序3。
题目:打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。
java基础50道经典练习题及答案
java基础50道经典练习题及答案Java基础50道经典练习题及答案Java作为一门广泛应用于软件开发领域的编程语言,其基础知识的掌握对于程序员来说至关重要。
为了帮助大家更好地理解和掌握Java的基础知识,下面将介绍50道经典的Java练习题及其答案。
1. 编写一个Java程序,打印输出"Hello, World!"。
```javapublic class HelloWorld {public static void main(String[] args) {System.out.println("Hello, World!");}}```2. 编写一个Java程序,计算并打印输出1到100之间所有偶数的和。
```javapublic class SumOfEvenNumbers {public static void main(String[] args) {int sum = 0;for (int i = 1; i <= 100; i++) {if (i % 2 == 0) {sum += i;}System.out.println("Sum of even numbers: " + sum);}}```3. 编写一个Java程序,判断一个整数是否为素数。
```javapublic class PrimeNumber {public static void main(String[] args) {int number = 17;boolean isPrime = true;for (int i = 2; i <= Math.sqrt(number); i++) {if (number % i == 0) {isPrime = false;break;}}if (isPrime) {System.out.println(number + " is a prime number.");} else {System.out.println(number + " is not a prime number."); }}```4. 编写一个Java程序,将一个字符串反转并输出。
JAVA编程实例大全及详解答案(50例)
JA V A编程实例大全及详解答案(50例)【程序1】题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?//这是一个菲波拉契数列问题public class lianxi01 {public static void main(String[] args) {System.out.println("第1个月的兔子对数: 1");System.out.println("第2个月的兔子对数: 1");int f1 = 1, f2 = 1, f, M=24;for(int i=3; i<=M; i++) {f = f2;f2 = f1 + f2;f1 = f;System.out.println("第" + i +"个月的兔子对数: "+f2);}}}【程序2】题目:判断101-200之间有多少个素数,并输出所有素数。
程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除,则表明此数不是素数,反之是素数。
public class lianxi02 {public static void main(String[] args) {int count = 0;for(int i=101; i<200; i+=2) {boolean b = false;for(int j=2; j<=Math.sqrt(i); j++){if(i % j == 0) { b = false; break; }else { b = true; }}if(b == true) {count ++;System.out.println(i );}}System.out.println( "素数个数是: " + count);}【程序3】题目:打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。
java基础50道经典练习题及标准答案
沃克IT教育JAVA基础编程练习题
整理:Lemon 【程序1】
题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子对数为多少?
【程序2】
题目:判断101-200之间有多少个素数,并输出所有素数。
程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除,则表明此数不是素
【程序3】
题目:打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。
例如:153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方。
JAVA经典算法50题
JA V A经典算法40题【程序1】题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第四个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?(1,1,2,3,5,8,13,21,34,55,89,144,233,377,610,987,1597,2584,4181,6765)1.程序分析:兔子的规律为数列1,1,2,3,5,8,13,21....public class exp2{public static void main(String args[]){int i=0;for(i=1;i<=20;i++)System.out.println(f(i));}public static int f(int x){if(x==1 || x==2)return 1;elsereturn f(x-1)+f(x-2);}}或public class exp2{public static void main(String args[]){int i=0;math mymath = new math();for(i=1;i<=20;i++)System.out.println(mymath.f(i));}}class math{public int f(int x){if(x==1 || x==2)return 1;elsereturn f(x-1)+f(x-2);}}【程序2】题目:判断101-200之间有多少个素数,并输出所有素数。
1.程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除,则表明此数不是素数,反之是素数。
public class Sushu{ public static void main(String[] args){int i,j,count=0;for (i = 101; i <= 200; i++) // 101-200的数{for (j = 2; j <= (int)Math.sqrt(i); j++){if (i % j == 0)break;}if (j > (int)Math.sqrt(i)){count++;System.out.println(i);}}System.out.println("从101到200间有" + count + "个素数。
资料整理JAVA编程题全套汇编50题及规范标准答案
写一个函数,例如:给你的a b c 则输出abc acb bac bca cab cbaimport java.util.ArrayList;import java.util.List;public class NumTest {public static void main(String[] args) {String s="ABCD";//原字符串List<String> result = list(s, "");//列出字符的组合,放入resultSystem.out.println(result.size());;System.out.println(result);}/*** 列出基础字符串(base)的所有组合* @param base 以该字符串作为基础字符串,进行选择性组合。
* @param buff 所求字符串的临时结果* @param result 存放所求结果*/public static List<String> list(String base,String buff){List<String> result = new ArrayList<String>();//存放结果信息。
if(base.length()<=0){result.add(buff);}for(int i=0;i<base.length();i++){List<String> temp = list(new StringBuilder(base).deleteCharAt(i).toString(),buff+base.ch arAt(i));result.addAll(temp);}return result;}}+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ++++++++public static void main(String[] args) {String s="ABCD";//原字符串List<String> result = new ArrayList<String>();//存放结果信息。
JAVA经典算法50题
JAVA经典算法41题【程序1】题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第四个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?前二十1.程序分析:兔子的规律为数列1,1,2,3,5,8,13,21....public class Demo01 {public static void main(String args[]) {int i = 0;for (i = 1; i <= 20; i++)System.out.println(f(i));}public static int f(int x) {if (x == 1 || x == 2)return 1;elsereturn f(x - 1) + f(x - 2);}}或public class Demo02 {public static void main(String args[]) {int i = 0;math mymath = new math();for (i = 1; i <= 20; i++)System.out.println(mymath.f(i));}}class math {public int f(int x) {if (x == 1 || x == 2)return 1;elsereturn f(x - 1) + f(x - 2);}}【程序2】题目:判断101-200之间有多少个素数,并输出所有素数。
1.程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除,则表明此数不是素数,反之是素数。
public class Demo03 {public static void main(String args[]) {int i = 0;math mymath = new math();for (i = 2; i <= 200; i++)if (mymath.iszhishu(i) == true)System.out.println(i);}}class math {public int f(int x) {if (x == 1 || x == 2)return 1;elsereturn f(x - 1) + f(x - 2);}public boolean iszhishu(int x) {for (int i = 2; i <= x / 2; i++)if (x % i == 0)return false;return true;}}【程序3】题目:打印出所有的 "水仙花数 ",所谓 "水仙花数 "是指一个三位数,其各位数字立方和等于该数本身。
JAVA编程题全集(50题及答案)
【程序1】ﻫ题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月得兔子总数为多少?//这就是一个菲波拉契数列问题ﻫpublicclass lianxi01 {ﻫpublicstaticvoid main(Str ing[]args) {System、out、println("第1个月得兔子对数:1”);System、out、println("第2个月得兔子对数:1");ﻫintf1= 1, f2=1, f,M=24;ﻫfor(int i=3; i〈=M;i++){f=f2;f2= f1+ f2;ﻫf1 = f;System、out、println(”第" +i +"个月得兔子对数:”+f2);}ﻫ}}【程序2】ﻫ题目:判断101-200之间有多少个素数,并输出所有素数.程序分析:判断素数得方法:用一个数分别去除2到sqrt(这个数),如果能被整除,则表明此数不就是素数,反之就是素数。
public class lianxi02 {public static void main(String[]args){int count = 0;for(inti=101; i〈200;i+=2){boolean b=false;for(int j=2; j〈=Math、sqrt(i);j++){if(i%j ==0){ b = false;break;}ﻫelse { b =tr ue;}}if(b== true) {count ++;System、out、println(i );}}System、out、println( "素数个数就是:"+count);}ﻫ}【程序3】题目:打印出所有得"水仙花数”,所谓"水仙花数”就是指一个三位数,其各位数字立方与等于该数本身。
例如:153就是一个"水仙花数”,因为153=1得三次方+5得三次方+3得三次方。
JAVA经典算法50题 (linux系统)
JAVA经典算法50题(linux系统)linux软件开发【程序1】题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第四个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?1.程序分析:兔子的规律为数列1,1,2,3,5,8,13,21....public class exp2{public static void main(String args[]){int i=0;for(i=1;i<=20;i++)System.out.println(f(i));}public static int f(int x){if(x==1 || x==2)return 1;elsereturn f(x-1)+f(x-2);}}【程序2】题目:判断101-200之间有多少个素数,并输出所有素数。
1.程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除,则表明此数不是素数,反之是素数。
import java.util.ArrayList;public class Sushu {public static void main(String[] args) {ArrayList list = new ArrayList();for(int i =101;i<=200;i++){if(isPrime(i))list.add(i);}System.out.println(list+"\n共有"+list.size()+"个素数");}public static boolean isPrime(int i){boolean flag = true;for(int j =2;j<=Math.sqrt(i);j++){if(i%j==0){flag = false;}}return flag;}}【程序3】题目:打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。
java经典50编程题
java经典50编程题1. 菲波拉契数列:有⼀对兔⼦,从出⽣后第 3 个⽉起每个⽉都⽣⼀对兔⼦,⼩兔⼦长到第三个⽉后每个⽉⼜⽣⼀对兔⼦,假如兔⼦都不死,问每个⽉的兔⼦总数为多少?1package com.day2;2public class test1 {3public static void main(String[] args) {4// TODO Auto-generated method stub5int s1 = 1, s2 = 1, s, month = 24;6 System.out.println("第1个⽉的兔⼦总数:\t"+1);7 System.out.println("第2个⽉的兔⼦总数:\t"+1);8for(int i = 3; i <= month; i++)9 {10//每个⽉的兔⼦总数是前两个⽉的总和11 s = s2;12 s2 += s1;13 s1 = s;14 System.out.println("第"+i+"个⽉的兔⼦总数:\t"+s2);15 }1617 }1819 }test12. 判断 101-200 之间有多少个素数,并输出所有素数。
1package com.day2;2public class test2 {3public static void main(String[] args) {4// TODO Auto-generated method stub5int count = 0;6for(int i = 101; i <= 200; i++)7 {8boolean b = false;9for (int j = 2; j < Math.sqrt(i); j++) {10if(i%j == 0)11 {12 b = false;13break;14 }15else16 {17 b = true;18 }19 }20if(b == true)21 {22 count ++;23 System.out.println(i);24 }25 }26 System.out.println("素数的总数为:"+count);27 }2829 }test23. 打印出所有⽔仙花数1package com.day2;23public class test3 {4public static void main(String[] args) {5int b1, b2, b3;6for(int m=101; m<1000; m++)7 {8 b3 = m / 100;9 b2 = m % 100 / 10;10 b1 = m % 10;11if((b3*b3*b3 + b2*b2*b2 + b1*b1*b1) == m)12 {13 System.out.println(m+"是⼀个⽔仙花数");14 }15 }16 }17 }test34. 将⼀个正整数分解质因数。
java基础50道经典练习题及答案(word文档良心出品)
沃克IT教育JAVA基础编程练习题整理:Lemon 【程序1】题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子对数为多少?【程序2】题目:判断101-200之间有多少个素数,并输出所有素数。
程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除,则表明此数不是素数,【程序3】题目:打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。
例如:153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方。
【程序4】题目:将一个正整数分解质因数。
例如:输入90,打印出90=2*3*3*5。
程序分析:对n进行分解质因数,应先找到一个最小的质数k,然后按下述步骤完成:(1)如果这个质数恰等于n,则说明分解质因数的过程已经结束,打印出即可。
(2)如果n<>k,但n能被k整除,则应打印出k的值,并用n除以k的商,作为新的正整数n,重复执行第一步。
【程序5】题目:利用条件运算符的嵌套来完成此题:学习成绩>=90分的同学用A表示,60-89分之间的用B表示,60分以下的用C表示。
【程序6】题目:输入两个正整数m和n,求其最大公约数和最小公倍数。
【程序7】题目:输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。
【程序8】题目:求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。
例如2+22+222+2222+22222(此时共有5个数相加),几个数相加有键盘控制。
【程序9】题目:一个数如果恰好等于它的因子之和,这个数就称为"完数"。
例如6=1+2+3.编程找出1000以内的【程序10】题目:一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在第10次落地时,【程序11】题目:有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?程序分析:可填在百位、十位、个位的数字都是1、2、3、4。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1package work;public class Fib {public static void main(String[] args){int[] fib = new int[23];fib[0] = 1;fib[1] = 1;for(int i = 2; i < fib.length; i++){fib[i] = fib[i - 1] + fib[i - 2];}for(int i = 0; i < fib.length; i++){System.out.print(fib[i]+" ");}}}2package work;import java.math.*;import java.util.ArrayList;public class Sushu {public static void main(String[] args){ArrayList list = new ArrayList();for(int i = 101; i < 200; i++){if(isPrime(i)){list.add(i);}}System.out.println(list + "共有" +list.size());}public static boolean isPrime(int i){boolean flag = true;for(int j = 2; j < Math.sqrt(i); j++){if(i % j == 0){flag = false;}}return flag;}}3package work;public class Flower {public static void main(String[] args){for(int i = 100; i <999; i++){if(flower(i)){System.out.print(i +" ");}}}public static boolean flower(int number){boolean flag = false;int i = number / 100; //int j = (number - i*100) / 10;int k = number % 10;if((i*i*i + j*j*j + k*k*k) == number){flag = true;}return flag;}}4package work;import java.util.Scanner;import java.io.*;public class Decomposition {private static int k = 2;public static void main(String[] args)throws IOException{ Scanner scanner = new Scanner(System.in);System.out.println("请输入一个整数");int number = scanner.nextInt();System.out.print(number + "=");fenJie(number);}public static void fenJie(int number){if(k == number){System.out.print(k);return;}else if(number % k == 0){System.out.print(k + "*");fenJie(number / k);}else{k++;fenJie(number);}}}5package work;import java.util.Scanner;import java.io.*;public class TiaoJian{public static void main(String[] args) throws IOException{ Scanner scanner = new Scanner(System.in);System.out.println("请输入成绩");int score = scanner.nextInt();char s = ((score >= 90) ? 'A' : ((score < 60) ? 'C' : 'B'));System.out.println(s);}}6package work;import java.util.Scanner;public class Beiyue{public static void main(String[] args){Scanner scanner = new Scanner(System.in);System.out.println("请输入m n");int m = scanner.nextInt();int n = scanner.nextInt();int a = yueshu(m,n);System.out.println("最大公约数为;" + a);System.out.println("最小公倍数为:" +m * n / a);}public static int yueshu(int m, int n){if(n == 0){return m;}else if(n != 0){return yueshu(n,m%n);}return 0;}}7package work;import java.util.Scanner;public class Fenlei{public static void main(String[] args){Scanner scanner = new Scanner(System.in);System.out.println("请输入一串字符:");String s = scanner.nextLine();char[] ch = s.toCharArray();int number = 0;int space = 0;int letter = 0;int other = 0;for(int i = 0; i < ch.length; i++){if(((ch[i] > 'a') && (ch[i] < 'z')) || ((ch[i] > 'A') && (ch[i] < 'Z'))){ //Character.isLetter(ch[i])letter++;}else if((ch[i] > '0') &&(ch[i] < '9')){ //Character.isDigit(ch[i])number++;}else if(ch[i] == ' '){ //Character.isSpaceChar(ch[i]) space++;}else{other++;}}System.out.println("letter = " + letter);System.out.println("number = " + number);System.out.println("space = " + space);System.out.println("other = " + other);}}8package work;import java.util.Scanner;public class Sum{public static void main(String[] args){Scanner scanner = new Scanner(System.in);System.out.println("请输入数字a");int a = scanner.nextInt();System.out.println("请输入加数个数");int n = scanner.nextInt();sum(a, n);}public static void sum(int a, int n){int sum = 0;int t = 0; //每一项的值System.out.println("sum = ");for(int i = 0; i < n; i++){t = 0; //初始化为0for(int j = 0; j <= i; j++){ //计算每一项的值t = t + (int)(Math.pow(10, j)) * a;}if(i < n - 1){System.out.print(t + "+");}sum = sum + t;}System.out.print(t);System.out.print("=" + sum);}}9package work;import java.io.*;public class Wanshu{private static int k = 2;private static int sum = 1;public static void main(String[] args){for(int number = 4; number < 1000; number++){ k = 2;sum =1;wanshu(number);}}public static int fenJie(int number){if(k == number){//System.out.print(k);sum = sum + k;}else if(number % k == 0){//System.out.print(k + " * ");sum = sum + k;fenJie(number / k);}else if(number % k != 0){k++;fenJie(number);}return sum;}public static void wanshu(int number){//System.out.print(number + "= 1 * ");int s = fenJie(number);//System.out.println();//System.out.println("因子之和为:" + s);if(s == number){System.out.print(number + " ");}}}10package work;public class Fantan{public static void main(String[] args){double length = 100;double height = 100;for(int i = 0; i < 10; i++){length = length + height;height = height / 2.0;}System.out.println(length);System.out.println(height);}}11package work;public class Pailie{public static void main(String[] args){int sum = 0;int num = 0;for(int i = 1; i <= 4; i++){for(int j = 1; j <= 4; j++){for(int k = 1; k <= 4; k++){if((k != j) && (k !=i) && (i != j)){num = 100 * i + 10 * j + k;System.out.print(num + " ");sum++;}}}}System.out.println("sum = " + sum);}}12package work;import java.util.Scanner;public class Pay{public static void main(String[] args){Scanner scanner = new Scanner(System.in);System.out.println("请输入工资:");int salary = scanner.nextInt();int n = salary / 10;double sum;switch(n){case 0 :sum = salary * 0.1; break;case 1 :sum = 1 + (salary - 10) * 0.075; break;case 2 :case 3 :sum = 1.75 + (salary - 20) * 0.05; break;case 4 :case 5 :sum = 2.75 + (salary - 40) * 0.03; break;case 6 :case 7 :case 8 :case 9 :sum = 3.35 + (salary - 60) * 0.015; break;default :sum = 3.95 + (salary - 100) * 0.1; break;}System.out.println("奖金为:" + sum);}}13package work;public class Pow{public static void main(String[] args){int number = 0;for(int i = 0; i < 320; i++){for(int j = 0; j < 320; j++){if((i * i -100) == (j * j -268)){number = i * i -100;if(number > 0){System.out.println(number + " ");}}}}}}14package work;import java.util.Scanner;public class Day{public static void main(String[] args){Scanner scanner = new Scanner(System.in);System.out.println("请输入年");int year = scanner.nextInt();System.out.println("请输入月");int month = scanner.nextInt();System.out.println("请输入日");int day = scanner.nextInt();boolean flag = false;if((((year % 4) == 0) && ((year % 100) != 0)) || ((year % 400) == 0)){ flag = true;}int sum = 0;switch(month){case 1 :sum = day; break;case 2 :sum = 28 + day; break;case 3 :sum = 59 + day; break;case 4 :sum = 90 + day; break;case 5 :sum = 120 + day; break;case 6 :sum = 151 + day; break;case 7 :sum = 181 + day; break;case 8 :sum = 212 + day; break;case 9 :sum = 243 + day; break;case 10 :sum = 273 + day; break;case 11 :sum = 304 + day; break;case 12 :sum = 335 + day; break;default :System.out.println("输入有误");}if(flag && (month > 1)){sum++;}System.out.println("这是一年中的第" + sum + "天");}}15package work;import java.util.Scanner;public class Min{public static void main(String[] args){Scanner scanner = new Scanner(System.in);System.out.println("请输入三个整数");int x = scanner.nextInt();int y = scanner.nextInt();int z = scanner.nextInt();if(x < y && x < z){System.out.print(x + " ");if(y < z){System.out.print(y + " " + z);}else if(y > z){System.out.print(z + " " + y);}}else if(y < x && y < z){System.out.print(y + " ");if(x < z){System.out.print(x + " " + z);}else if(x > z){System.out.print(z + " " + x);}}else if(z < y && z < x){System.out.print(z + " ");if(y < x){System.out.print(y + " " + x);}else if(y > x){System.out.print(x + " " + y);}}}}16package work;public class Nine{public static void main(String[] args){for(int i = 1; i <= 9; i++){for(int j = 1; j <= i; j++){System.out.print(j + " * "+ i + " = " + (j * i) + " ");}System.out.println();}}}17package work;public class Eat{public static void main(String[] args){System.out.println(eat(10,1));}public static int eat(int day, int sum){if(day == 1){return sum;}else if(day != 1){return eat(day - 1,(sum + 1) * 2);}return sum;}}18package work;public class Contest{public static void main(String[] args){char i, j, k;//a b c 的对手for(i = 'x'; i <= 'z'; i++){for(j = 'x'; j <= 'z'; j++){for(k = 'x'; k <= 'z'; k++){if(i != j && i != k && j != k){if(i != 'x' && k != 'x' && k!= 'z'){System.out.println(i + " " + j + " " + k);}}}}}}}19package work;public class Print{public static void main(String[] args){ for(int i = 0; i <= 4; i++){for(int j = 0; j < 4 - i; j++){System.out.print(" ");}for(int j = 0; j < 2 * i - 1; j++){System.out.print("*");}System.out.println();}for(int i = 3; i > 0; i--){for(int j = 0; j <= 3 - i; j++){System.out.print(" ");}for(int j = 0; j < 2 * i - 1; j++){System.out.print("*");}System.out.println();}}}20package work;public class Sum{public static void main(String[] args){ double[] a = new double[22];a[0] = 1.0;a[1] = 2.0;double sum = 0;for(int i = 2; i < 21; i++){a[i] = a[i - 1] + a[i - 2];}for(int i = 1; i < 21; i++){sum = sum + a[i] / a[i - 1];}System.out.println("sum = " + sum);}}21package work;public class Jiech{public static void main(String[] args){int sum = 0;for(int i = 1; i < 21; i++){sum = sum + jiech(i);}System.out.println("阶乘之和为:" + sum);}public static int jiech(int n){if(n == 1){return 1;}else if(n != 1){return jiech(n - 1) * n;}return 0;}}22package work;public class Jiecheng{public static void main(String[] args){System.out.println(jiech(5));}public static int jiech(int n){if(n == 1){return 1;}else if(n != 1){return jiech(n - 1) * n;}return 0;}}23package work;public class Age{public static void main(String[] args){System.out.println(age(5));}public static int age(int n){if(n == 1){return 10;}else if(n != 1){return age(n - 1) + 2;}return 0;}}24package work;import java.util.Scanner;public class Number{public static void main(String[] args){Scanner scanner = new Scanner(System.in);System.out.println("请输入一个不多于五位的正整数:");String num = scanner.next();int len = num.length();System.out.println("这是一个" + len + "位数");for(int i = len; i > 0; i--){System.out.println("第" + i + "位数是" + num.charAt(i - 1));}}}25package work;import java.util.Scanner;public class Huiwen{public static void main(String[] args){Scanner scanner = new Scanner(System.in);System.out.println("请输入一个五位数:");String number = scanner.next();if(number.charAt(0) == number.charAt(4) && number.charAt(1) == number.charAt(3)){System.out.println(number + "是回文数");}else{System.out.println(number + "不是回文数");}}}26package work;import java.util.Scanner;public class Week{public static void main(String[] args){Scanner scanner = new Scanner(System.in);System.out.println("请输入第1个字母:");String str = scanner.next();switch(str.charAt(0)){case 'm' :System.out.println("Monday"); break;case 't' :System.out.println("请输入第2个字母:");str = scanner.next();if(str.charAt(0) == 'u'){System.out.println("Tuesday");}else{System.out.println("Thursday");}break;case 'w' :System.out.println("Wednesday");break;case 'f' :System.out.println("Friday"); break;case 's' :System.out.println("请输入第2个字母:");str = scanner.next();if(str.charAt(0) == 'a'){System.out.println("Satday");}else{System.out.println("Sunday");}break;default :System.out.println("输入有误");}}}27package work;public class Prime{public static void main(String[] args){for(int i = 2; i < 100; i++){if(prime(i)){System.out.print(i + " ");}}}public static boolean prime(int number){boolean flag = true;for(int i = 2; i <= Math.sqrt(number); i++){if(number % i == 0){flag = false;}}return flag;}}28package work;public class Sort{public static void main(String[] args){int[] a = {2,4,3,6,7,8,1,89,56,23};sort(a);for(int array : a){System.out.print(array + " ");}}public static void sort(int[] a){int index;for(int i = 0; i < 9; i++){index = i;for(int j = i + 1; j < 10; j++){if(a[j] < a[index]){index = j;}}int t;if(index != i){t = a[i];a[i] = a[index];a[index] = t;}}}}29package work;import java.util.Scanner;public class Sum{public static void main(String[] args){Scanner scanner = new Scanner(System.in);int[][] a = new int[3][3];int sum = 0;System.out.println("请输入数据:");int i;for(i = 0; i < 3; i++){for(int j = 0; j < 3; j++){a[i][j] = scanner.nextInt();}sum = sum + a[i][i];}System.out.println("sum = " + sum);}}30package work;import java.util.Scanner;public class Sort{public static void main(String[] args){int[] a = new int[4];a[0] = 1;a[1] = 2;a[2] = 4;Scanner scanner = new Scanner(System.in);System.out.println("请输入一个整数:");int number = scanner.nextInt();if(number > a[a.length - 2]){a[a.length - 1] = number;}else{int k = 0;for(int i = a.length - 3; i > 0; i--){if(number > a[i]){k = i;}}for(int j = a.length - 1; j > k ; j--){a[j] = a[j - 1];}a[k + 1] = number;}for(int array : a){System.out.print(array + " ");}}}31package work;public class Array {public static void main(String[] args){int[] a = {1,2,3,4};int t;for(int i = 0; i < a.length / 2; i++){t = a[i];a[i] = a[a.length - i - 1];a[a.length - i -1] = t;}for(int array : a){System.out.print(array);}}}32package work;import java.util.Scanner;public class Move{public static void main(String[] args){Scanner scanner = new Scanner(System.in);System.out.println("请输入一个整数");String str = scanner.next();int len = str.length();System.out.println(str.charAt(len -4) + " " + str.charAt(len -5) + " " + str.charAt(len -6) + " " + str.charAt(len -7));}}33package work;public class Yanghui{public static void main(String[] args){int n = 6;int a[][] = new int[n][n];a[1][1] = 1;int i;for(i = 2; i < n; i++){a[i][1] = 1;a[i][i] = 1;for(int j = 2; j <= i; j++){a[i][j] = a[i - 1][j - 1] + a[i - 1][j];}}for(i = 1; i < n; i++){for(int j = 0; j < 5 - i; j++){System.out.print(" ");}for(int j = 1; j <= i; j++){System.out.print(a[i][j] + " ");}System.out.println();}}}34package work;import java.util.Scanner;public class Max {public static void main(String[] args){Scanner scanner = new Scanner(System.in);System.out.println("请输入a,b,c");int x = scanner.nextInt();int y = scanner.nextInt();int z = scanner.nextInt();if(x < y && x < z){System.out.print(x + " ");if(y < z){System.out.print(y + " " + z);}else if(y > z){System.out.print(z + " " + y);}}else if(y < x && y < z){System.out.print(y + " ");if(x < z){System.out.print(x + " " + z);}else if(x > z){System.out.print(z + " " + x);}}else if(z < y && z < x){System.out.print(z + " ");if(y < x){System.out.print(y + " " + x);}else if(y > x){System.out.print(x + " " + y);}}}}35package work;import java.util.Scanner;public class Maxmin {public static void main(String[] args){Scanner scanner = new Scanner(System.in);int[] a = new int[5];System.out.println("请输入数组值");int max = 0, min = 0, m = 0, n = 0, t = 0;for(int i = 0; i < a.length; i++){a[i] = scanner.nextInt();if(max < a[i]){max = a[i];m = i;}if(min > a[i]){min = a[i];n = i;}}t = a[0];a[0] = max;a[m] = t;t = a[4];a[4] = min;a[n] = t;for(int j = 0; j < a.length; j++){System.out.print(a[j] + " ");}}}36package work;import java.util.Scanner;public class Move{public static void main(String[] args){Scanner scanner = new Scanner(System.in);System.out.println("请输入5个数");int[] a = new int[5];int[] b = new int[5];for(int i = 0; i < 5; i++){a[i] = scanner.nextInt();}System.out.println("请输入移动的位数n");int n = scanner.nextInt();for(int j = 0; j < 5; j++){b[j] = a[(j + n) % 5];}for(int arr : b){System.out.print(arr + " ");}}}37package work;import java.util.Scanner;public class Stay{public static void main(String[] args){Scanner scanner = new Scanner(System.in);System.out.println("请输入人数n");int n = scanner.nextInt();boolean[] a = new boolean[n];for(int i = 0; i < a.length; i++){a[i] = true;}int rest = n;int count = 0;int i = 0;while(rest > 1){if(a[i] == true){count++;}if(count == 3){a[i] = false;rest--;count = 0;}i++;i = i % n;}for(i = 0; i < n; i++){if(a[i] == true){System.out.println(i);}}}}38package work;import java.util.Scanner;public class Length{public static void main(String[] args){Scanner scanner = new Scanner(System.in);System.out.println("请输入字符串");String str = scanner.next();System.out.println("长度为" + getLength(str));}public static int getLength(String s){return s.length();}}39package work;import java.util.Scanner;public class Sum{public static void main(String[] args){Scanner scanner = new Scanner(System.in);System.out.println("请输入一个数n");int n = scanner.nextInt();System.out.print("和为" + sum(n));}public static double sum(int n){double sum = 0;int k;if(n % 2 == 0){k = 2;}else{k = 1;}for(double i = k; i <= n; i = i + 2){sum = sum + 1.0 / i;}return sum;}}40package work;import java.util.Scanner;import java.util.Arrays;public class Sort{public static void main(String[] args){Scanner scanner = new Scanner(System.in);System.out.println("请输入一个字符串:");String str = scanner.next();char[] ch = str.toCharArray();Arrays.sort(ch);for(char c : ch){System.out.print(c);}}}41package work;public class Peach{public static void main(String[] args){System.out.println("共有桃子数目为:" + peach(5, 6));}public static int peach(int monkey, int sum){if(monkey == 1){return sum;}else if(monkey != 1){return peach(monkey - 1, sum * 5 + 1);}return 0;}}42package work;public class Number{public static void main(String[] args){for(int i = 10; i < 100; i++){if(809 * i == 800 * i + 9 * i + 1){System.out.println(i);}}}}43package work;public class Count{public static void main(String[] args){int n= 8;int one = n / 2;int two = (n - 1) * n / 2;int three = (n - 1) * n * n / 2;int four = (n - 1) * n * n * n / 2;int five = (n - 1) * n * n * n / 2;int six = (n - 1) * n * n * n * n / 2;int seven = (n - 1) * n * n * n * n * n / 2;int sum = one + two + three + four + five + six + seven;System.out.println(sum);}}44package work;import java.util.Scanner;public class Primer{public static void main(String[] args){Scanner scanner = new Scanner(System.in);System.out.println("请输入一个偶数");int n = scanner.nextInt();for(int i = 2; i <= n / 2; i++){if(primer(i) && primer(n - i)){System.out.println(n + " = " + i + " + " + (n - i));}}}public static boolean primer(int n){int i;for(i = 2; i <= n; i++){if(n % i == 0){break;}}if(i == n){return true;}else{return false;}}}45package work;//判断一个非素数能被几个9整除import java.util.Scanner;public class Nine{public static void main(String[] args){Scanner scanner = new Scanner(System.in);System.out.println("请输入一个合数");int number = scanner.nextInt();int count = 0;while(number % 9 == 0){number = number / 9;count++;}System.out.println("能被" + count + "个9整除");}}46package work;import java.util.Scanner;public class Connect{public static void main(String[] args){Scanner scanner = new Scanner(System.in);System.out.println("请输入两个字符串");String str1 = scanner.next();String str2 = scanner.next();String str3 = str1 + str2;System.out.println("连接后的字符串为" + str3);}}47package work;import java.util.Scanner;public class Print{public static void main(String[] args){Scanner scanner = new Scanner(System.in);System.out.println("请输入1--50之内的7个数");int[] a = new int[7];for(int i = 0; i < 7; i++){a[i] = scanner.nextInt();}for(int i = 0; i < 7; i++){System.out.println(a[i]);for(int j = 0; j < a[i]; j++){System.out.print("*");}System.out.println();}}}48package work;import java.util.Scanner;public class Secret{public static void main(String[] args){Scanner scanner = new Scanner(System.in);System.out.println("请输入四位整数:");int a = scanner.nextInt();int b = scanner.nextInt();int c = scanner.nextInt();int d = scanner.nextInt();System.out.println("加密后为" + jiaMi(d) + jiaMi(c) + jiaMi(b) + jiaMi(a));}public static int jiaMi(int num){num = (num + 5) % 10;return num;}}49package work;import java.util.Scanner;public class Str{public static void main(String[] args){Scanner scanner = new Scanner(System.in);System.out.println("输入一个字符串");String text = scanner.next();System.out.println("请输入一个子字符串");String str = scanner.next();String[] s = text.split(str);System.out.println((s.length - 1) + "次");}}50package work;import java.util.*;import java.io.*;public class Student {private String[] name = new String[5];private String[] number = new String[5];private int score[][] = new int[5][3];private int aver[] = new int[5];public static void main(String[] args)throws IOException{ Scanner scanner = new Scanner(System.in);Student student = new Student();File file = new File("d:\\stud.txt");FileWriter fw = new FileWriter("d:\\stud.txt");BufferedWriter bw = new BufferedWriter(fw);for(int i = 0; i < 5; i++){System.out.println("请输入姓名");[i] = scanner.next();bw.write(" "+[i]);System.out.println("请输入学号");student.number[i] = scanner.next();bw.write(" "+student.number[i]);int sum = 0;for(int j = 0; j < 3; j++){System.out.println("请输入成绩");student.score[i][j] = scanner.nextInt();bw.write( " "+student.score[i][j]);sum = sum + student.score[i][j];}student.aver[i] = sum / 3;bw.write(student.aver[i]);bw.newLine();}bw.close();}}。