作者简介: 辭七七,目前大一,正在学习C/C++,Java,Python等
作者主页: 七七的个人主页
文章收录专栏:Java.SE,本专栏主要讲解运算符,程序逻辑控制,方法的使用,数组的使用,类和对象,继承和多态,抽象类和接口等内容
欢迎大家点赞 👍 收藏 ⭐ 加关注哦!💖💖
文章目录
1. if语句练习
判断一个年份是否为闰年
int year = 2000;if (year % 100 == 0) { // 判定世纪闰年 if (year % 400 == 0) { System.out.println("是闰年"); } else { System.out.println("不是闰年"); }} else { // 普通闰年 if (year % 4 == 0) { System.out.println("是闰年"); } else { System.out.println("不是闰年"); }}
2. while循环练习
1. 计算 5 的阶乘
5!= 5 * 4 * 3 * 2 * 1
int n = 1;int ret = 1;while(n <= 5){ ret = ret * n; n++; } System.out.println(ret);
运行结果:
2. 计算 1! + 2! + 3! + 4! + 5!
我们基于上一题的代码,在写一个循环,使得可以求到5的阶乘,再把他们相加,代码如下所示:
int k =1; int sum = 0; // 外层循环负责求阶乘的和 while(k <= 5) { int n = 1; int ret = 1; // 里层循环负责完成求阶乘的细节. while (n <= k) { ret = ret * n; n++; } k++; sum = sum + ret; } System.out.println(sum);
运行结果:
3. for循环练习
1. 计算 5 的阶乘
int result = 1;for (int i = 1; i <= 5; i++) { result *= i;}System.out.println("result = " + result);
运行结果:
2. 计算 1! + 2! + 3! + 4! + 5!
int sum = 0;for (int i = 1; i <= 5; i++) { int tmp = 1; for (int j = 1; j <= i; j++) { tmp *= j; } sum += tmp;}System.out.println("sum = " + sum);
运行结果:
4.总结练习
1. 判定一个数字是否是素数
如果能够整除2~根号n之间所有的数,那么他就不是素数
代码演示:
public class TestDemo { public static void main(String[] args) { int n = 19; int i = 2; for (; i <=Math.sqrt(n) ; i++) { if (n % i == 0){ break; } } //有两种情况 1、 不符合循环条件 2、因为遇到了 break if (i > Math.sqrt(n)){ System.out.println(n + " 是素数! "); } }}
运行结果:
2. 打印 1 - 100 之间所有的素数
for (int n = 1; n <= 100; n++) { //int n = 9; int i = 2; for (; i <= Math.sqrt(n); i++) { if(n % i == 0) { break; } } //有几种情况 ? 2--》 1、 不符合循环条件 2、因为遇到了 break if(i > Math.sqrt(n)) { System.out.println(n + " 是素数! "); } }
打印结果:
3. 求出0~999之间的所有“水仙花数”并输出。(“水仙花数”是指一个三位数,其各位数字的立方和确好等于该数
本身,如: 153=13+53+3^3 ,则153是一个“水仙花数”。)
我们先来了解一下水仙花数是什么,如图所示:
常见的水仙花数:
代码演示:
for (int i = 1; i <= 999999; i++) { //i == 123 int count = 0;//记录位数 int tmp = i; while (tmp != 0) { tmp /= 10; count++; } tmp = i;//123 int sum = 0; while (tmp != 0) { sum += Math.pow(tmp % 10, count); tmp /= 10; } if (sum == i) { System.out.println(i); } }
获取一个数二进制序列中所有的偶数位和奇数位,分别输出二进制序列。
代码演示:
int n = -1;int count = 0;while (n != 0) { n = n & (n-1); count++;}System.out.println(count);
5.猜数字游戏
public class TestDemo { public static void main(String[] args) { Random random = new Random(); Scanner scanner = new Scanner(System.in); int randNum = random.nextInt(101);//[0,101) //50-100的随机数 random.nextInt(50)--[0,50) + 50; while(true){ System.out.println("请输入你要猜的数字"); int sum = scanner.nextInt(); if(sum < randNum){ System.out.println("猜小了"); }else if(sum == randNum){ System.out.println("猜对了"); break; }else{ System.out.println("猜大了"); } } }}
运行结果:
关于【Java基础篇】逻辑控制练习题与猜数字游戏,七七就先分享到这里了,如果你认为这篇文章对你有帮助,请给七七点个赞吧,如果发现什么问题,欢迎评论区留言!!💕💕
来源地址:https://blog.csdn.net/2201_75366661/article/details/130636914