当前位置:网站首页 > Java基础 > 正文

java基础50道



  基础编程训练
【程序
题目:古典问题:有一对兔子,从出生后第 个月起每个月都生一对兔子,小兔子长到第三个月后每个月
又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?
程序分析:兔子的规律为数列 
解答:
(方法一)
利用数学分析可得知:这个月的兔子数量为前两个月的兔子数量之和,推导过程如下:


:表示一个月大的兔子;
表示两个月大的兔子;
表示三个月及三月以上的兔子。
有以下数学表达式:



























因此上面每个月的兔子的数量满足斐波那契数列。编程实现较为简单,此处省略。
(方法二)
方法二利用编程实现,具有一般性(开始兔子个数和产仔周期可自行输入),程序设计如下:
【程序
题目:判断  之间有多少个素数,并输出所有素数。
 程序分析:判断素数的方法:用一个数分别去除  这个数,如果能被整除,
则表明此数不是素数,反之是素数。
解答:
程序如下:
【程序
题目:打印出所有的 水仙花数 ,所谓 水仙花数 是指一个三位数,其各位数字立方和等于该数本身。例
如:
 是一个水仙花数,因为  的三次方+ 的三次方+ 的三次方。
 程序分析:利用  循环控制  个数,每个数分解出个位,十位,百位。
解答:
程序如下:
【程序
题目:将一个正整数分解质因数。例如:输入 打印出 
解答:
分析:对 进行分解质因数,应先找到一个最小的质数 ,然后按下述步骤完成:
 如果这个质数恰等于 ,则说明分解质因数的过程已经结束,打印出即可。
 如果 ! ,但 能被 整除,则应打印出 的值,并用 除以 的商作为新的正整数你  重复执行第一
步。
 如果 不能被 整除,则用  作为 的值重复执行第一步。
【程序
题目:利用条件运算符的嵌套来完成此题:学习成绩 ! 分的同学用 表示, " 分之间的用 # 表示,
" 分以下的用 $ 表示。
解答:
【程序 "
题目:输入两个正整数 % ,求其最大公约数和最小公倍数。
& 求最大公约数!
算法( 1)设计:
E0.[ mErr or: R e ference sour ce not found n] mErr or: R eference source not found n
mErr or: R efer ence sourc e not foundn
E1.[ ] n m r 0Err or: Refer ence source not found rErr or :
R efere nce source not foundn 。)
E2.[ 余数为 0?] r 0 ,算法结束,n 即为所求答案。
E3.[ ] mErr or: Re ference source not f oundn nErr or: Refer ence source not f oundr
返回步骤 E1
数学证明:
(1) m%n=0 ,则 n 为所求最大公因子
(2) m%nErr or: R e ference sourc e not found 0 ,则只需证明下面命题成立
如果某数是 n m%n 最大公因子,则这 个数也是 m n 最大公因子。 (上面算 法可化为这
句话 )
证明:
假设 a n m%n 的最大公因子,则有:
(m%n)%a=0 m
%n=k*a k n
%a=0 ,故可设 n=p*a p 也为正整数。
可得数学表达式: m=t*n+m%n,其中 t 为不小于 0 的整数。
因此有: m=t*p*a+k*a=(t*p+k)*a,因此可得 m%a=0
因此有如下两个表达式:
a m n 的公因子已经证毕。
a m n
(可用反证法证明)
证明:
假设 m n 存在公因子 b,且有 b>a
则有 :
可以仿照上面的推导过程得出:
b n m%n
b>a a n m%n
公因子矛盾。
综上,如果某数是 n m%n 的最大公因子,则这个数也是 m n 的最大公因子。
(3) 证毕。
对步骤 E0 的分析:
m<n m%n=m E0 m m%nError: Reference source not
foundn
算法( 2)设计:
 余数  ,并令 为余数。
 它是  如果  ,则此算法以 为答案而终止。
 余数  ,并令 是余数。
 它是  如果  ,则算法以答案 而终止,否则返回步骤 
算法( 2)可仿照算法( 1)进行证明
< 求最大公倍数>
算法设计:
F1 :求出 % 的较大者,令较大者为 %,较小者为
' :判断 % 能否被 整除,若能则 % 为两者最小公倍数。
' :将 分解因式。
' :将 % 依次乘以 的因子,判断乘积能否被 整除,若能则乘积为两者最小公倍数。
根据上面的算法,程序如下:
【程序 (
题目:输入一行字符,分别统计出其中 英文母、空格、数字和其它字符的个数。
解答:
这题需 字的 内码进行一定的 解, 两个字 ,每个字 的开始位为 。程序如下:
【程序
题目: ))))))))))))) 的值, 其中 ) 是一 个数字。 例如 时共
个数 相加个数 相加键盘控制。
解答:
在此题中,利用进行字符 运算的 运算符,然后将字符 串转为数字,实现 程序过程,程序设计如下:
【程序
题目:一个数如果恰 等于它的因子之和,这个数 就称 完数 。例如 "编程 找出 
所有完数。
解答:
根据题目 意思,设计程序如下:
【程序 
java基础50道
题目:一  米高度 由落下,每次 落地后反 原高度的一 下,求它在  落地时
经过多少?第  次反
解答:
此题较为简单,程序设计如下:
【程序 
题目:有 个数字,能 成多少个 同且 重复数字的三位数?都是多少?
解答:
好排 组合 ,可设计程序如下:
满足条件的三位数是:
234
243
324
342
423
432
134
143
314
341
413
431
124
142
214
241
412
421
123
132
213
231
312
321
【程序 
题目 企业发放根据 成。 * 等于  奖金 +;利 润高 
 万元时  万元 分按 +成,  万元 分,可可 (+ 
 ,可 + " 之间 时高  ,可 +"
 之间 " 万元分, +  元时  万元分按 + 成,
键盘输入当月利 *,求应 发放奖金总数?
解答:
此题较为简单, 注意义时把奖金成长整 。程序设计如下:
【程序 
题目:一个整数,它  后是一个完 全平方数, 再加 " 又是一个完 全平方数, 问该数是多少?
解答:
可先对问题进行 当分析,分析 情况如下:
假设整数为 ,第一个完 全平方数为 ,,第二个完 全平方数为 -,则有下面的 关系式。
,
"-
将两个式子 减, 进行 当的数学 变形可得: -,-,"
得出可被 " 整除的数(前面已经编程实现),令 -,-,
则有 -.- 需为正整数),则有 --"。则可得出答案。
程序设计如下:(一般性程序,两个数可以自 输入)
【程序 
题目:输入某 某月某 ,判断这一 是这一 的第 几天
解答:
闰年 的判断,可根据以下三进行判断。
1 4 1 0 0 2 0 0 4 , 1 9 0 0
2 4 0 0 ( 2 0 0 0 1 9 0 0 )
3 , 3 2 0 0 , 1 7 2 8 0 0 1 7 2 8 0 0
86400 ( 3200 172800)
 进行数据的 读取于是 连续输入而且输入 中有 字,故 方法不行
程序 设计 要改进, 利用 isDigit 法进 行程 序设 计, 果, 序如 所示


输入 期: 
 是这一的第
输入 期:  !
 ! 是这一的第 !
【程序 
题目:输入三个整数 /01请把这三个数 小到大输出。
解答:
利用  进行数据的 读取"#sort进行 序,程序设计如下:
【程序 "
题目:输出  口诀
 程序分析:分行与列考虑 列,2 控制行,3 控制列。
解答:
此题较为简单,程序设计如下:
【程序 (
题目 吃桃问题 子第 天摘下若 子, 当即 吃了又多 吃了一个 第二 天早
又将 下的 吃掉,又多 吃了一个。 以后每 天早吃了前一 天剩 的一 一个。到第  天早
想再吃时下一个 。求第一 天共摘了多少。
解答:
分析: 采取逆向思维的方法,从后 前推断。
【程序 
题目:两个 乒乓球队进行 比赛,各出三 甲队 )45 乙队 /01 。已 抽签决比赛名单。
人向队员听比赛单。 ) 不和 / 5 不和 /1 编程序找出三 队赛手单。
解答:
分析:
其实问题可 化为 组合问题, ) /01 中的一 个, 4 可以 选剩两个中的一个 ,而 5 只能 最后
下的一个,总 " 中可能。列的实现可以照程序 ,具程序如下:
$ % &
a(vs)z b(vs)x c(vs)y
【程序 
题目:打印出如下 案( 菱形
666
66
6

6

  • 上一篇: java必会基础
  • 下一篇: 基础的java项目
  • 版权声明


    相关文章:

  • java必会基础2025-04-26 16:02:05
  • 零基础java与php哪个好2025-04-26 16:02:05
  • java语言基础实验2025-04-26 16:02:05
  • java基础练习技巧2025-04-26 16:02:05
  • java基础4982025-04-26 16:02:05
  • 基础的java项目2025-04-26 16:02:05
  • java基础枚举2025-04-26 16:02:05
  • java编程基础框架2025-04-26 16:02:05
  • java基础视频学习2025-04-26 16:02:05
  • java基础小题2025-04-26 16:02:05