欢迎来到天天文库
浏览记录
ID:8154496
大小:55.00 KB
页数:14页
时间:2018-03-08
《java中期考试题(含答案)》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、【程序1】题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?publicclasslianxi01{publicstaticvoidmain(String[]args){System.out.println("第1个月的兔子对数: 1");System.out.println("第2个月的兔子对数: 1");intf1=1,f2=1,f,M=24; for(inti=3;i<=M;i++){ f=f2; f2
2、=f1+f2; f1=f; System.out.println("第"+i+"个月的兔子对数:"+f2); }}}【程序2】题目:判断101-200之间有多少个素数,并输出所有素数。程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除,则表明此数不是素数,反之是素数。publicclasslianxi02{publicstaticvoidmain(String[]args){ intcount=0; for(inti=101;i<200;i+=2){ boolea
3、nb=false; for(intj=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);www.whtarena.com.cn}}【程序3】题目:打
4、印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方。publicclasslianxi03{publicstaticvoidmain(String[]args){ intb1,b2,b3; for(intm=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)
5、{ System.out.println(m+"是一个水仙花数");} }}} 【程序4】题目:将一个正整数分解质因数。例如:输入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的值,重复执行第一步。importjava.util.*;pu
6、blic class lianxi04{ publicstaticvoidmain(String[]args){ Scanners=newScanner(System.in); System.out.print("请键入一个正整数: "); int n =s.nextInt(); intk=2; System.out.print(n+"="); while(k<=n){ if(k==n){System.out.prin
7、tln(n);break;} elseif(n%k==0){System.out.print(k+"*");n=n/k;} else k++; } } }【程序5】题目:输入两个正整数m和n,求其最大公约数和最小公倍数。/**在循环中,只要除数不等于0,用较大数除以较小的数,将小的一个数作为下一轮循环的大数,取得的余数作为下一轮循环的较小的数,如此循环直到较小的数的值为0,返回较大的数,此数即为最大公约数,最小公倍数为两数之积除以最
8、大公约数。*/importjava.util.*;public class lianxi06 {publicstaticvoidmain(String[]args){int a,b,m;Scanne
此文档下载收益归作者所有