JAVA编程题目(含解答)new

上传人:xins****2008 文档编号:110965394 上传时间:2019-11-01 格式:DOC 页数:58 大小:357.50KB
返回 下载 相关 举报
JAVA编程题目(含解答)new_第1页
第1页 / 共58页
JAVA编程题目(含解答)new_第2页
第2页 / 共58页
JAVA编程题目(含解答)new_第3页
第3页 / 共58页
JAVA编程题目(含解答)new_第4页
第4页 / 共58页
JAVA编程题目(含解答)new_第5页
第5页 / 共58页
点击查看更多>>
资源描述

《JAVA编程题目(含解答)new》由会员分享,可在线阅读,更多相关《JAVA编程题目(含解答)new(58页珍藏版)》请在金锄头文库上搜索。

1、【程序1】 题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少? 1.程序分析: 兔子的规律为数列1,1,2,3,5,8,13,21. import java.util.Scanner;public class RabbitsQuit /* * 【程序1】 题目:古典问题:有一对兔子,从出生后第3个月 起每个月都生一对兔子,小兔子长到第三个月后每个月又生 一 * 对兔子,假如兔子都不死,问每个月的兔子总数为多少? 1.程序分析: 兔子的规律为数列1,1,2,3,5,8,13,21. */public

2、 static void main(String args) / TODO Auto-generated method stubScanner sc = new Scanner(System.in);RabbitsQuit rq = new RabbitsQuit();System.out.println(请输入一个整数:);int n = sc.nextInt();for (int i = 0; i n; i+) System.out.println(第 + (i + 1) + 个月: + rq.calc(i + 1);private int calc(int x) if (x = 1 |

3、x = 2)return 1;elsereturn calc(x - 2) + calc(x - 1);【程序2】 题目:判断101-200之间有多少个素数,并输出所有素数。 1.程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除, 则表明此数不是素数,反之是素数。 import java.util.Scanner;public class RabbitsQuit /* * 【程序1】 题目:古典问题:有一对兔子,从出生后第3个月 起每个月都生一对兔子,小兔子长到第三个月后每个月又生 一 * 对兔子,假如兔子都不死,问每个月的兔子总数为多少? 1.程序分析: 兔子的

4、规律为数列1,1,2,3,5,8,13,21. */public static void main(String args) / TODO Auto-generated method stubScanner sc = new Scanner(System.in);RabbitsQuit rq = new RabbitsQuit();System.out.println(请输入一个整数:);int n = sc.nextInt();for (int i = 0; i n; i+) System.out.println(第 + (i + 1) + 个月: + rq.calc(i + 1);priv

5、ate int calc(int x) if (x = 1 | x = 2)return 1;elsereturn calc(x - 2) + calc(x - 1);法二:import java.util.Vector;public class PrimeNumber2 /* * 【程序2】 题目:判断101-200之间有多少个素数,并输出所有 素数。 1.程序分析:判断素数的方法:用一个数分别去除2到sqrt * (这个数),如果能被整除, 则表明此数不是素数,反之是素数。 */SuppressWarnings( unchecked, rawtypes )public static voi

6、d main(String args) / TODO Auto-generated method stubVector v = new Vector();/ 使用向量来装素数int i, j, ct = 0;for (i = 101; i 200; i+) for (j = 2; j i; j+) if (i % j = 0) break;if (i = j) v.add(i);ct+;System.out.println(101200之间一共有: + ct + 个素数。);System.out.println(=);System.out.println(v.toString().substr

7、ing(1,v.toString().length()-1);【程序3】 题目:打印出所有的水仙花数,所谓水仙花数是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个水仙花数,因为153=1的三次方5的三次方3的三次方。 1.程序分析:利用for循环控制100-999个数,每个数分解出个位,十位,百位。 public class DaffodilsNumber /* * 【程序3】 题目:打印出所有的水仙花数,所谓水仙花数是指 一个三位数,其各位数字立方和等于该数本身。例如: * 153是一个水仙花数,因为153=1的三次方5的三次方 3的三次方。 1.程序分析: * 利用for循

8、环控制100-999个数,每个数分解出个位, 十位,百位。 */public static void main(String args) / TODO Auto-generated method stubDaffodilNumber dn;int ct = 0;for (int i = 100; i 1000; i+) dn = new DaffodilNumber(i);/System.out.println(dn);if (dn.isDaffodilNumber() ct+;System.out.println(i + = + dn);System.out.println(=);Syste

9、m.out.println(100999之间一共有: + ct + 个水仙花数。);class DaffodilNumber private int bw;private int sw;private int gw;private int num;public DaffodilNumber(int num) this.num = num;this.bw = num / 100;this.sw = (num-bw*100)/10;this.gw = num % 10;public boolean isDaffodilNumber() if (num = bw * bw * bw + sw * s

10、w * sw + gw * gw * gw)return true;elsereturn false;public String toString() return bw + * + bw + * + bw + + + sw + * + sw + * + sw + + gw + * + gw + * + gw;【程序4】 题目:将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5。 程序分析:对n进行分解质因数,应先找到一个最小的质数k,然后按下述步骤完成: (1)如果这个质数恰等于n,则说明分解质因数的过程已经结束,打印出即可。 (2)如果nk,但n能被k整除,则应打印出k的值

11、,并用n除以k的商,作为新的正整数你n,重复执行第一步。 (3)如果n不能被k整除,则用k+1作为k的值,重复执行第一步。 import java.util.Scanner;public class PrimeSplit /* * 【程序4】 题目:将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5。 * 程序分析:对n进行分解质因数,应先找到一个最小的质数k,然后按下述步骤完成: * (1)如果这个质数恰等于n,则说明分解质因数的过程已经结束,打印出即可。 * (2)如果nk,但n能被k整除,则应打印出k的值,并用n除以k的商,作为新的正整数你n,重复执行第一步。 * (3)

12、如果n不能被k整除,则用k+1作为k的值,重复执行第一步。 */public static void main(String args) / TODO Auto-generated method stubScanner sc = new Scanner(System.in);int n;while (true) System.out.println(请输入一个大于1的整数:);n = sc.nextInt();if (n 1)break;System.out.print(n + = );int i = 2;String str = ;while (i = n) if (n % i = 0 &

13、isPrime(i) str += * + i;n /= i;i = 2;continue;i+;System.out.println(str.substring(1);private static boolean isPrime(int n) for (int i = 2; i =90分的同学用A表示,60-89分之间的用B表示,60分以下的用C表示。 1.程序分析:(ab)?a:b这是条件运算符的基本例子。 import java.util.Scanner;public class PerformanceRating /* * 【程序5】 题目:利用条件运算符的嵌套来完成此题:学习成绩=90分的同学用A表示,60-89分之间的用B表示,60分以下的用C表示

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 大杂烩/其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号