1 / 32
文档名称:

整理java基础必会50题及答案.doc

格式:doc   大小:149KB   页数:32页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

整理java基础必会50题及答案.doc

上传人:88jmni97 2017/4/1 文件大小:149 KB

下载得到文件列表

整理java基础必会50题及答案.doc

相关文档

文档介绍

文档介绍:题目:将一个正整数分解质因数。例如:输入 90, 打印出 90=2*3*3*5 。程序分析:对 n 进行分解质因数,应先找到一个最小的质数 k ,然后按下述步骤完成: (1) 如果这个质数恰等于 n ,则说明分解质因数的过程已经结束,打印出即可。(2) 如果 n <> k ,但 n 能被 k 整除,则应打印出 k 的值,并用 n 除以 k 的商, 作为新的正整数你 n, 重复执行第一步。(3) 如果 n 不能被 k 整除,则用 k+1 作为 k 的值, 重复执行第一步。 import .*; public class lianxi04{ public static void main(String[] args) { Scanner s= new Scanner(); ( " 请键入一个正整数: "); intn= (); int k=2; (n + "=" ); while(k <= n){ if(k == n) {(n);break;} else if(n%k == 0) {(k + "*");n =n/ k;} else k++; }}} 题目: 打印出所有的" 水仙花数", 所谓" 水仙花数" 是指一个三位数, 其各位数字立方和等于该数本身。例如: 153 是一个" 水仙花数" ,因为 153=1 的三次方+ 5 的三次方+ 3的三次方。 public class lianxi03 { public static void main(String[] args) { int b1, b2, b3; for(int m=101; m<1000; m++) { b3=m/ 100; b2=m% 100 / 10; b1=m% 10; if((b3*b3*b3 + b2*b2*b2 + b1*b1*b1) == m) { (m+" 是一个水仙花数");} }}} 题目:古典问题:有一对兔子,从出生后第 3 个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少? //这是一个菲波拉契数列问题 public class lianxi01 { public static void main(String[] args) { (" 第1 个月的兔子对数: 1"); (" 第2 个月的兔子对数: 1"); int f1= 1, f2= 1, f, M=24; for(int i=3; i<=M; i++) {f= f2; f2= f1+ f2; f1= f; (" 第"+i +" 个月的兔子对数: "+f2); }}} 题目:一个数如果恰好等于它的因子之和,这个数就称为" 完数" 。例如 6=1 +2+ 1000 以内的所有完数。 public class lianxi09 { public static void main(String[] args) { ("1 到 1000 的完数有: "); for(int i=1; i<1000; i++) { intt= 0; for(int j=1; j<= i/2; j++) { if(i %j == 0){t=t+ j;}} if(t == i){ (i +" "); }}} 题目:利用条件运算符的嵌套来完成此题:学****成绩> =90 分的同学用 A 表示, 60-89 分之间的用 B 表示, 60 分以下的用 C 表示。 import .*; public class lianxi05 { public static void main(String[] args) { int x; char grade; Scanner s= new Scanner(); ( " 请输入一个成绩: "); x= (); grade =x >= 90? 'A' :x >= 60? 'B' :'C'; (" 等级为: "+grade); }} 题目:输入两个正整数 m和n ,求其最大公约数和最小公倍数。/** 在循环中, 只要除数不等于 0, 用较大数除以较小的数, 将小的一个数作为下一轮循环的大数, 取得的余数作为下一轮循