1、【程序 1】題目:古典问题:有一对兔子,从出生后第 3 个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?刚开始真的无从下手,这么难的,怎么可以说是基础呢,感觉这些应该是逻辑分析很强的,第一个月只有一对兔子,第二个月还是只有一对兔子,第三个月,就有两对了,第四个月 3 对,第五个月 5 对,第六个月 8 对,第七个月是 13 对。规律出来了,你们发了没?java view plain copy1. public class Example1 2. public static void main(String args) 3. /i 是表
2、示月份的,这里计算了 36 个月,也就是三年,兔子的数量 4. int i; 5. long arr=new long36; /这个数组时用来计算每月有兔子的对数 6. arr0=arr1=1; 7. System.out.println(“第 1 个月有兔子 1 对“+ “, “+“总数是“+2); 8. System.out.println(“第 2 个月有兔子 1 对“+ “, “+“总数是“+2); 9. for(i=2;ik,但 n 能被 k 整除,则应打印出 k 的值,并用 n 除以 k 的商,作为新的正整数你 n,重复执行第一步。 (3)如果 n 不能被 k 整除,则用 k+1
3、作为 k 的值,重复执行第一步。 java view plain copy1. import java.util.*; 2. public class Example4 3. public static void main(String args) 4. int x; 5. Scanner in = new Scanner(System.in);/定义从键盘输入 6. System.out.print(“请输入一个正整数:“);/ 提示 7. x = in.nextInt(); /将从键盘输入的数赋值给 x 8. new PrimeSplit(x); /匿名初始化一个对象,还有参数的构造函数
4、9. 10. 11. class PrimeSplit 12. int k = 2; /将最小的质数赋值给 k 13. public PrimeSplit(int x) /小于等于 1 的数不可以分解 14. if(x=90 分的同学用 A 表示,60-89 分之间的用 B 表示,60 分以下的用 C 表示。 java view plain copy1. public class Example5 2. public static void main(String args) 3. int score=90; /分数的值可以随便修改 4. if(score=90) 5. System.out.
5、println(“A“); 6. 7. else if(score=60) 8. System.out.println(“B“); 9. 10. else 11. System.out.println(“C“); 12. 13. 14. 15. 【程序 6】 题目:输入两个正整数 m 和 n,求其最大公约数和最小公倍数。 java view plain copy1. public class Example6 2. public static void main(String args) 3. gcdlcm a =new gcdlcm(); 4. System.out.println(“兩數的
6、最大公約數是:“+a.gcd(10, 16); 5. System.out.println(“兩數的最小公倍數是:“+a.lcm(16, 10); 6. 7. 8. class gcdlcm 9. int gcd(int m,int n) 10. if(mn) /這個判斷是爲了將大數放在前面 11. int temp=n; 12. n=m; 13. m=temp; 14. 15. if(m%n=0) 16. return n; 17. 18. else 19. m%=n; 20. return gcd(m,n); 21. /這裡也可以寫成 gcd(n,m),就省掉了前面的判斷了,會快一點 22
7、. 23. 24. int lcm(int m,int n) 25. int i=1; 26. if(mn) /這個判斷是爲了將大數放在前面 27. int temp=n; 28. n=m; 29. m=temp; 30. 31. int lcm=m; 32. while(lcm%n!=0) 33. lcm=m*i; 34. i+; 35. 36. return lcm; 37. 38. 【程序 7】 题目:输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。 java view plain copy1. import java.util.Scanner; 2. 3. publi
8、c class Example 4. public static void main(String args) 5. / TODO Auto-generated method stub 6. int abcCount=0;/英文字母个数 7. int spaceCount=0;/空格键个数 8. int numCount=0;/数字个数 9. int otherCount=0;/其他字符个数 10. Scanner scan=new Scanner(System.in); 11. String str=scan.nextLine(); 12. char ch = str.toCharArray
9、(); 13. for(int i=0;ich.length;i+) 14. if(Character.isLetter(chi) 15. /判断是否字母 16. abcCount+; 17. 18. else if(Character.isDigit(chi) 19. /判断是否数字 20. numCount+; 21. 22. else if(Character.isSpaceChar(chi) 23. /判断是否空格键 24. spaceCount+; 25. 26. else 27. /以上都不是则认为是其他字符 28. otherCount+; 29. 30. 31. System.
10、out.println(“字母个数:“+abcCount); 32. System.out.println(“数字个数:“+numCount); 33. System.out.println(“空格个数:“+spaceCount); 34. System.out.println(“其他字符个数:“+otherCount); 35. 36. 37. 【程序 8】 题目:求 s=a+aa+aaa+aaaa+aa.a 的值,其中 a 是一个数字。例如2+22+222+2222+22222(此时共有 5 个数相加) ,几个数相加有键盘控制。 【程序 9】 题目:一个数如果恰好等于它的因子之和,这个数就
11、称为“完数“ 。例如 6=123.编程 找出 1000 以内的所有完数。 【程序 10】 题目:一球从 100 米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在 第 10 次落地时,共经过多少米?第 10 次反弹多高? 【程序 11】 题目:有 1、2、3 、4 个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?【程序 12】 题目:企业发放的奖金根据利润提成。利润(I)低于或等于 10 万元时,奖金可提 10%;利润高于 10 万元,低于 20 万元时,低于 10 万元的部分按 10%提成,高于 10 万元的部分,可可提成 7.5%;20 万到40 万之间时,高于 20
12、 万元的部分,可提成 5%;40 万到 60 万之间时高于 40 万元的部分,可提成 3%;60 万到 100 万之间时,高于 60 万元的部分,可提成 1.5%,高于 100 万元时,超过 100 万元的部分按 1%提成,从键盘输入当月利润 I,求应发放奖金总数? 【程序 13】 题目:一个整数,它加上 100 后是一个完全平方数,再加上 168 又是一个完全平方数,请问该数是多少? 【程序 14】 题目:输入某年某月某日,判断这一天是这一年的第几天? 【程序 15】 题目:输入三个整数 x,y,z,请把这三个数由小到大输出。 【程序 16】 题目:输出 9*9 口诀。 【程序 17】 题目
13、:猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个 第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下 的一半零一个。到第 10 天早上想再吃时,见只剩下一个桃子了。求第一天共摘了多少。 【程序 18】 题目:两个乒乓球队进行比赛,各出三人。甲队为 a,b,c 三人,乙队为 x,y,z 三人。已抽签决定比赛名单。有人向队员打听比赛的名单。a 说他不和 x 比,c 说他不和 x,z 比,请编程序找出三队赛手的名单。【程序 19】 题目:打印出如下图案(菱形) * * * * * * * 【程序 20】 题目:有一分数序列:2/1, 3/2,5/3,8/5 ,13/8,21/13. 求出这个数列的前 20 项之和。【程序 21】 题目:求 1+2!+3!+.+20!的和 【程序 22】 题目:利用递归方法求 5!。 【程序 23】 题目:有 5 个人坐在一起,问第五个人多少岁?他说比第 4 个人大 2 岁。问第 4 个人岁数,他说比第 3 个人大 2 岁。问第三个人,又说比第 2 人大两岁。问第 2 个人,说比第一个人大两岁。最后问第一个人,他说是 10 岁。请问第五个人多大? 【程序 24】