【0 基础学 Java】习题1:分支循环

本文介绍了多个Java编程基础习题,包括年龄分类、素数判断、水仙花数等,旨在帮助初学者巩固基础,提升编程能力。同时,文章讨论了交互式输入的注意事项,并提供了相关习题的答案和思考方向。
摘要由CSDN通过智能技术生成

码字不易,对你有帮助 点赞/转发/关注 支持一下作者

微信搜公众号:不会编程的程序圆

看更多干货,获取第一时间更新

习题答案在我的 Github 上,链接在文章尾部,不要忘记 star 呦~

提示

1.找错误
import java.util.Scanner;

public class helloWorld{
	
	public static void main(String[] args) {
		
		Scanner scan = new Scanner(System.in);
		
		String a = scan.next;
		String b = scan.nextLine;
	
	}		
}

答案:

import java.util.Scanner;

public class helloWorld{
	
	public static void main(String[] args) {
		
		Scanner scan = new Scanner(System.in);
		
		String a = scan.next();//加上括号
		String b = scan.nextLine();
	
	}		
}

上面这种情况的可能会这样报错:

改了之后就可以通过编译了。

2. 关于交互性

如果你想像 C语言 一样,在输入之前给出提示,我们如果这样写:

while( Num.hasNextInt() ) {
	
    System.out.println("请输入一个整数:");		
	num = Num.nextInt();
 	
    ...   
}

我们会发现这样的情况:提示语总是在我们输入之后才打印出来。这时候你要知道,你的程序写的是没有问题的,问题就在于 while 循环条件中的 Num.hasNextInt() 这个方法会阻塞程序的进行,要求你输入一个整数。

作为初学者,如果你有能力,可以去百度更好的方法,如果你觉得没必要,那么只能“委曲求全”,放弃交互性 或 放弃 while 循环的便利性。

编程题

1、1、根据年龄, 来打印出当前年龄的人是少年(低于18), 青年(19-28), 中年(29-55), 老年(56以上)
2. 判定一个数字是否是素数
3. 打印 1 - 100 之间所有的素数
4. 输出 1000 ~ 2000 之间所有的闰年
5. 输出乘法口诀表
6. 求两个正整数的最大公约数
7. 计算1/1-1/2+1/3-1/4+1/5 …… + 1/99 - 1/100 的值
8. 编写程序数一下 1到 100 的所有整数中出现多少个数字9
变型:输出 1 ~ 100 包含 9 的数字
9. 求出0~999之间的所有“水仙花数”并输出。(“水仙花数”是指一个三位数,其各位数字的立方和确好等于该数本身,如;153=13+53+3^3,则153是一个“水仙花数”。)
变型:判断任意位数的“水仙花数”
10. 编写代码模拟三次密码输入的场景。 最多能输入三次密码,密码正确,提示“登录成功”,密码错误, 可以重新输入,最多输入三次。三次均错,则提示退出程序
11. 写一个函数返回参数二进制中 1 的个数 比如:0000 1111 中有 4 个 1

第一种方法是:我们判断 10 进制数的位数是,采用的方法是 “模 10 除 10”,那么再判断 2 进制数时,我们就可以采取 “模 2 除 2”的办法。

第二种方法:我们用按位与的办法。让数按位与 1 ,如果结果是 1,该数的二进制的 1 的总数增加 1;然后将该数右移 1 位,重复多次,知道该数变为 0 。

12. 获取一个数二进制序列中所有的偶数位和奇数位, 分别输出二进制序列
13. 输出一个整数的每一位
14. 猜数字游戏

[0 基础学 java ] 系列的代码可以在我的 Github 仓库查看,地址如下:

https://github.com/hairrrrr/Java_SE_EnjoyLearning

欢迎 star !(点一个 star 方便你下回查看)

本系列的教学也可以在 GitHub 观看(GitHub 上看教学的好处是所有文章的目录比较清晰)。


以上就是本次的内容。

如果文章有错误欢迎指正和补充,感谢!

最后,如果你还有什么问题或者想知道到的,可以在评论区告诉我呦,我可以在后面的文章加上你们的真知灼见。

关注我,看更多干货!

我是程序圆,我们下次再见。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值