语法练习题,精细讲解以及三个结束区别
我将带领各位每个板块2个经典不能再经典的题目来学习,用通俗易懂的方法让大家学习
if板块
题目一:输入三个数(a,b,c)比较大小,输出最大的数并打印
package trx.tutu.IfPlate;
import java.util.Scanner;
/*
*题目一:输入三个数(a,b,c)比较大小,输出最大的数并打印
* */
public class Text1 {
public static void main(String[] args) {
//第一步:我们需要输入键盘输入器
Scanner sc = new Scanner(System.in);//这就是键盘输入器 大家记牢
//我们键盘输入3个数、
System.out.println("请先输入第一个数:");//提示输入第一个数
int a=sc.nextInt();//这是让键盘输入的数,赋值到a这个变量上
//以此类推 进行下面两个变量的赋值
System.out.println("请先输入第二个数:");//提示输入第二个数
int b=sc.nextInt();//这是让键盘输入的数,赋值到b这个变量上
System.out.println("请先输入第三个数:");//提示输入第三个数
int c=sc.nextInt();//这是让键盘输入的数,赋值到c这个变量上
/*
我们先想一下思路,我们一般比较大小,是不是两两进行比较,再判断那个大,现在增加了一个数据,那我们是不是可以先将前两个进行比较,再那前两个比较
后大的数再次与这个未比较的数进行比较,然后最终判断出三个数中最大的值
*/
//下面就可以开始进行if语句的判断
System.out.println("下面开始进行判断,稍安勿躁!!!!");
int max=0; //定义一个最大的变量空置,让其赋值
if (a>b){ //1 这里我们先判断a,b中那个大 如果a大 我们进行第2 来判断a,c值 如果c大则 进行第4
if (a > c) { //2 判断a c值 如果a大 则把a赋值给max 然后进行输出 如果c大 则进行 第3
max = a;
System.out.println("最大值为:" + max);
} else { //3 经过 abc的判断 最终结果c是最大 则把c赋值给max 并输出
max = c;
System.out.println("最大值为:"+max);
}
} else if (b > c) { //4 c大,我们开始和b比较 如果b大 则把b值直接赋值给max 并输出 如果c大则进行第5
max = b;
System.out.println("最大值为:" + max);
} else { //5 经过 abc的判断 最终结果c是最大 则把c赋值给max 并输出
max = c;
System.out.println("最大值为:"+max);
}
/*这就是我们最终题目输出 大家可以看一下整体的流程 if判断语句中又嵌套了判断语句 我讲解的十分详细 对于所有小白都适用 */
}
}
题目二:输入年份,判断平闰年
package trx.tutu.IfPlate;
import java.util.Scanner;
/*
题目二:输入年份,判断平闰年
*/
public class Text2 {
public static void main(String[] args) {
//一样我们需要一个键盘输入器
Scanner sc = new Scanner(System.in);//这就是键盘输入器 大家记牢
System.out.println("请输入一个年份进行判断:");//给输入用户一个提醒
int year = sc.nextInt();//我们键盘输入了年份赋值给变量year
/*这个我们讲一下思路,我们平常怎么判断平闰年的。
闰年同时满足以下条件:
1. 年份能被 4 整除。
2. 年份若是 100 的整数倍,须被 400 整除*/
//我们开始进行判断
if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0) {
//“!=” 这个意思是不等于 “==” 是值等于咱们这个一个值 “&&”这个是并且的意思 “||”这个是或者的意思吗,就是可以二者随便一个满足就可
System.out.println(year + "是闰年");
} else { //这就是否则的意思
System.out.println(year + "是平年");
}
/*这就是我们最终题目输出 大家可以看一下整体的流程 if简单判断语句 我讲解的十分详细 对于所有小白都适用 */
}
}
switch板块
题目一:成绩判断,若输入的成绩<60则输出“成绩不合格”,成绩>=60&&<80则输出“成绩及格”,成绩>=80&&<90则输出“成绩良好”,成绩>=90&<=100则输出“成绩优秀”。
package trx.tutu.SwitchPlate;
import java.util.Scanner;
/*
* 题目一:成绩判断,若输入的成绩<60则输出“成绩不合格”,成绩>=60&&<80则输出“成绩及格”,
成绩>=80&&<90则输出“成绩良好”,成绩>=90&<=100则输出“成绩优秀”。*/
public class Text1 {
public static void main(String[] args) {
//一样我们需要一个键盘输入器
Scanner sc = new Scanner(System.in);//这就是键盘输入器 大家记牢
System.out.println("请输入一个成绩分数进行判断:");//给输入用户一个提醒
int grade = sc.nextInt();//我们键盘输入了年份赋值给变量grade
/*
* 我们开始想思路,我们判断其实就是分四个层次 我们其实最简单的可以用if语句来解决的 但是我负责化 让我们更加理解这个过程*/
int index=0;//我们定义一个指标作为switch判断依据
if (grade < 60&&grade >=0) {
index = 1;
}else if (grade >= 60 && grade < 80) {
index = 2;
}else if (grade >= 80 && grade < 90) {
index = 3;
} else if (grade >= 90 && grade <= 100) {
index = 4;
} else {
System.out.println("你输入的数据有误!!!无法判断");
}
//这个if语句我不过多讲解 你看了if的题目 肯定也看得懂这个
//这里我们开始进行switch判断的操作
switch (index) { //switch 语句判断 我们需要给它一个指标 让他判断 否则则怎么进行判断 我们的指标已经在到上面的if语句中进行过滤判断了层次的
//我们只需要把结果给予到每个层次中即可 以下就是操作
case 1:
System.out.println("成绩不合格");
break;
case 2:
System.out.println("成绩及格");
break;
case 3:
System.out.println("成绩良好");
break;
case 4:
System.out.println("成绩优秀");
break; //为什么每个case后要加一个break 因为这是一个结束语句 我们只要符合这一个层次,把结果输出来了 我们就要结束这个判断语句
// 不然他会继续向下进行判断 如果一直没结束 就会一直不停止
}
/*这就是我们最终题目输出 大家可以看一下整体的流程 switch简单判断语句 我讲解的十分详细 对于所有小白都适用 */
}
}
题目二:月份判断季节,12 1 2月为春 以此类推
package trx.tutu.SwitchPlate;
import java.util.Scanner;
/*
* 月份判断季节,12 1 2月为春 以此类推*/
public class Text2 {
public static void main(String[] args) {
//一样我们需要一个键盘输入器
Scanner sc = new Scanner(System.in);//这就是键盘输入器 大家记牢
System.out.println("请输入一个月份进行判断:");//给输入用户一个提醒
int month = sc.nextInt();//我们键盘输入了年份赋值给变量month
switch (month) { //一样的需要一个指标进行switch判断
case 1:
case 2:
case 12:
/*我们这个是可以把判断层数进行这个整合成一个小整体 只要我输入的这个指标在这个小团体内 则我可以输出小团体下的内容*/
System.out.println(month+"月是冬季");
break;
case 3:
case 4:
case 5:
System.out.println(month+"月是春季");
break;
case 6:
case 7:
case 8:
System.out.println(month+"月是夏季");
break;
case 9:
case 10:
case 11:
System.out.println(month+"月是冬季");
break;
}
/*switch判断语句比较容易我不过多进行展开讲解 主打一个会用就行*/
}
}
for循环板块
题目一:九九乘法表
package trx.tutu.ForPlate;
/*
*
* 题目一:九九乘法表*/
public class Text1 {
public static void main(String[] args) {
System.out.println("下面开始打印九九乘法表:"); //提醒用户打印
for (int i = 1; i <= 9; i++) { //我们这个i 是行数 一共九行 i从第一行开始运行 i++的意思是 i=i+1 我们i运行到第9行时结束 不会运行第10行
for (int j = 1; j <= i ; j++) { //j是列 当我们这个j<=i时 则我们是第i行 第J列 j++的意思是 j=j+1 我们J每次都是从1开始运行
System.out.print(i + "*" + j + "=" + (i*j) + "\t"); //“\t”是制表符哈 制表符就是空一格 就是这么简单
//我来举例说明 以第2行来说 我们运行到第2行第一列时 我们已经输出了 2*1=2 接着我们这个嵌套for循环还没有结束 j增加了的 没有>i 我们此时
//的i=2 又我们j=1 经过一轮后 j=j+1 则j=2了 还在这个范围中 我们还要进行一轮输出 2*2=4 当这输完后 我们j++ 则J=3>i 结束循环
}
System.out.println();
}
}
}
题目二:水仙花数(“水仙花数” 指的是一个三位数,个位、十位、百位的数字立方和等于原数本身。)
package trx.tutu.ForPlate;
import java.util.Scanner;
/*
* 题目二:水仙花数(“水仙花数” 指的是一个三位数,个位、十位、百位的数字立方和等于原数本身。)
* */
public class Text2 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("截止数(注意最多999):");
int n = sc.nextInt();
/*思路其实就是遍历进行判断 */
if (n < 100 || n >= 1000) { //提醒各位不要输错 注意范围值
System.out.println("输入数据有误 结束!!!");
}
for(int i = 100 ; i <= n ; i++) {// 循环遍历所有三位数 一个一个的遍历过去的 101 102 103 一直遍历到n
//获取值的个十百位
int a = i % 10; //个
int b = i / 10 %10;//十
int c = i / 100 % 10;//百
//开始进行判断
if(a * a * a + b * b * b + c * c * c == i){
System.out.println(i + "是一个水仙花数");
}
//咱们也可以定义一个数组 记录下来 都可以实现 这里我先不用数组 理解为主 不要增加新的知识
}
}
}
while循环板块
题目一:求1-100的所有数的和
package trx.tutu.WhilePlate;
import java.util.Scanner;
/*
*题目一:求1-100的所有数的和
* */
public class Text1 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("输入你需要计算到那个数的和:");
int n = sc.nextInt();
int i=1; //定义变量i
int sum=0; //sum和进行归零 最后好赋值
while (i<=n) { //当i<=n则一直进行循环 直到 超出才能跳出来
sum=sum+i; //可变成sum+=i
i=i+1; //可变成i++
}
System.out.println("1加到"+n+"的和是:"+sum);
}
}
题目二:摄氏温度与华氏温度的对照表
package trx.tutu.WhilePlate;
public class Text2 {
// 定义主函数,程序的入口点
public static void main(String[] args) {
// 初始化变量shi为-20,表示起始摄氏温度
int shi = -20;
// 声明一个名为hua的变量用于存储转换后的华氏温度,但未初始化
double hua;
// 使用do-while循环开始,确保至少执行一次循环体内的代码
do{
// 每次循环,摄氏温度shi增加20
shi += 20;
// 计算当前shi值对应的华氏温度,公式为:华氏温度 = 摄氏温度 * 9/5 + 32
hua = shi*9/5.0+32;
// 打印当前shi值对应的摄氏和华氏温度
System.out.println("摄氏温度:" + shi + "等于华氏温度:" + hua);
}
// 循环条件:当shi小于240时继续循环。由于每次循环shi增加20,最终shi会超过240,循环结束
while (shi < 240);
}
}
比较大小,输出最大的数并打印
package trx.tutu.threePlate;
import java.util.Scanner;
/*
* 题目一:输入三个数(a,b,c)比较大小,输出最大的数并打印
* */
public class Text1 {
public static void main(String[] args) {
//第一步:我们需要输入键盘输入器
Scanner sc = new Scanner(System.in);//这就是键盘输入器 大家记牢
//我们键盘输入3个数、
System.out.println("请先输入第一个数:");//提示输入第一个数
int a=sc.nextInt();//这是让键盘输入的数,赋值到a这个变量上
//以此类推 进行下面两个变量的赋值
System.out.println("请先输入第二个数:");//提示输入第二个数
int b=sc.nextInt();//这是让键盘输入的数,赋值到b这个变量上
System.out.println("请先输入第三个数:");//提示输入第三个数
int c=sc.nextInt();//这是让键盘输入的数,赋值到c这个变量上
System.out.println("开始进行三元运算符操作过程");
int max = a > b ? (a > c ? a : c) : (b > c ? b : c);
/*
这就是一个典型的使用嵌套三元运算符(也称条件运算符)的例子,用来在三个数a、b、c中找出最大值并将其赋值给变量max。三元运算符的工作方式是基于一个条件来选择两个表达式中的一个基本形式是【 (条件) ? (表达式1) : (表达式2)】,如果条件为真(true),则计算并返回表达式1的结果;如果条件为假(false),则返回表达式2的结果。
*/
System.out.println("最大值为:"+max);
}
}
题目二:判断一个字符串是否为空
package trx.tutu.threePlate;
import java.util.Scanner;
/*
题目二:判断一个字符串是否为空
* */
public class Text2 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入字符串或者直接按回车跳过输入:");
String str = sc.nextLine(); // 改为nextLine()允许用户直接按回车输入空字符串
String isEmpty = str == null || str.isEmpty() ? "字符串为空" : "字符串不为空";
System.out.println(isEmpty);
//如果字符串str为null或者调用str.isEmpty()返回true(即字符串为空),那么isEmpty变量就会被自动赋值为true,否则为false。
//isEmpty()是判断容器类型(如列表、集合、字符串等)是否为空的方法 记住就行
}
}