一、基础案例
1.训练案例1
1.1.训练描述
键盘录入一个int类型的数据,使用三元运算符判断这个数是奇数还是偶数
1.2.操作步骤描述
1.创建键盘录入对象
2.调用方法获取输入的数据
3.将变量%2如果 == 0 是偶数,否则是奇数
4.输出结果
实现代码
package itheima;
/*
@author: asus
@file: test01.py
@time: 2020/07/23
@desc:
*/
import java.util.Scanner;
public class test01 {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
System.out.println("请输入一个整数:");
int a=sc.nextInt();
int x=(a%2==0)?1:0;
if(x==1) {
System.out.println("该整数为偶数");
}else{
System.out.println("该整数为奇数");
}
}
}
2.训练案例2
2.1.训练描述
定义一个int类型的变量,初始化值为123,求这个数的个位,十位,百位分别是多少,输出结果:123的个位是3,十位是2,百位是1
2.2.操作步骤描述
1.定义变量初始化值为123
2.模10获取个位
3.先除以10,再模10获取到十位
4.除以100获取到百位
5.输出结果
package itheima;
/*
@author: asus
@file: test02.py
@time: 2020/07/23
@desc:
*/
public class test02 {
public static void main(String[] args) {
int a=123;
int b=a%10;
double c=a/10;
int d=(int)(c%10);
int e=a/100;
System.out.println("123的个位、十位、百位依次是:");
System.out.println(b);
System.out.println(d);
System.out.println(e);
}
}
3.训练案例3
3.1.训练描述
键盘录入一个长方形的长和宽(长和宽为int类型),计算长方形的面积和周长
3.2.操作步骤描述
1.使用输出语句提示用户输入长方形的长
2.使用Scanner类录入长方形的长
3.使用输出语句提示用户输入长方形的宽
4.使用Scanner类录入长方形的宽
5.定义变量保存长方形的面积,面积=长*宽
6.定义变量保存长方形的周长,周长=(长+宽)*2
7.使用输出语句输出面和和周长
package itheima;
/*
@author: asus
@file: test03.py
@time: 2020/07/23
@desc:
*/
import java.util.Scanner;
public class test03 {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
System.out.println("请输入长方形的长和宽:");
int a=sc.nextInt();
int b=sc.nextInt();
int c=(a+b)*2;
int s=a*b;
System.out.println("长方形的周长为:"+c);
System.out.println("长方形的面积为:"+s);
}
}
**
二、扩展案例
**
1.训练案例1
1.1.训练描述
1.小明左、右手中分别拿两张纸牌(比如:黑桃10和红桃8,数字10和8可通过键盘录入),要求编写代码交换小明手中的牌
2.程序运行的结果如下:
请输入小明左手中的纸牌:10
请输入小明右手中的纸牌:8
互换前小明手中的纸牌:
左手中的纸牌:10
右手中的纸牌:8
互换后小明手中的纸牌:
左手中的纸牌:8
右手中的纸牌:10
1.2.操作步骤描述
1.创建Scanner对象
2.录入第一个数据赋值给变量left
3.录入第二个数据赋值给变量right
4.定义一个临时变量temp,保存left的值
5.将right的值赋值给left
6.将临时变量temp的值赋值给right
7.按格式打印left和rigth中的值
import java.util.Scanner;
public class test04 {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
System.out.println("请输入小明左手中的牌:");
int left=sc.nextInt();
System.out.println("请输入小明右手中的牌:");
int right=sc.nextInt();
System.out.println("互换前小明左手为"+left+"右手为"+right);
int temp=0;
temp=left;
left=right;
right=temp;
System.out.println("互换后小明左手为"+left+"右手为"+right);
}
}
2.训练案例2
2.1.训练描述
1.键盘录入学员张浩的3门课程(Java、SQL、Web)的成绩
2.编写程序实现:
(1)Java课程和SQL课程的分数值差
(2)3门课程的平均分
3.程序运行格式:
请输入Java的成绩:100
请输入SQL的成绩:60
请输入Web的成
Java SQL Web
100 60 80
Java和SQL的成绩差:40
三门课的平均分是:80.0
2.2.操作步骤描述
1.创建键盘录入对象
2.定义三个变量用于存储三门课程的成绩
3.使用nextInt()方法给三门课程的变量赋值
4.定义存储差值及平均值的变量
5.求差值和平均值
6.打印最终结果
import java.util.Scanner;
public class test05 {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
System.out.println("请输入java成绩:");
int java=sc.nextInt();
System.out.println("请输入SQL成绩:");
int sql=sc.nextInt();
System.out.println("请输入web成绩:");
int web=sc.nextInt();
System.out.println("...............");
System.out.println("java sql web");
System.out.println(java+" "+sql+" "+web);
int sum=java+sql;
double avr=(java+sql+web)/3;
System.out.println("Java和sql总分为:"+sum+" 三门课平均分为:"+avr);
}
}
3.训练案例3
3.1.训练描述
1.商场推出幸运抽奖活动,抽奖规则如下:
(1)键盘录入四位数字(1000-9999的数字),作为顾客的会员卡号
(2)该会员卡号(键盘录入的四位数字)各位数字之和大于20,则为幸运客户
2.打印格式:
请输入4位会员卡号:3569
会员卡号3569各位之和:23
会员卡号3569是幸运客户
请输入4位会员卡号:1234
会员卡号3569各位之和:10
会员卡号3569不是幸运客户
3.2.操作步骤描述
1.创建键盘录入对象
2.定义int类型的变量(保存会员卡号),并通过键盘录入给变量赋值
3.使用/和%求出个位、十位、百位、千位上的数字
4.定义int类型的变量sum
5.计算各位数字之和并复制给sum
6.按照格式打印
(1)打印各位数字之和
(2)打印是或者不是幸运客户(是或者不是,可以通过三元运算符判断sum的值获取是或者不是)
import java.util.Scanner;
public class test06 {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
System.out.println("请输入会员卡:"); int a=sc.nextInt();
int b=a%10;
double c=a/10; int d=(int)(c%10);
double e=a/100;int f=(int)(e%10);
int g=a/1000;
int sum=g+f+d+b;
System.out.println("会员卡卡号和:"+sum);
if(sum>20) {
System.out.println("会员" + a + "是幸运客户");
}else{ System.out.println("会员" + a + "不是幸运客户");
}
}
}
4.训练案例4
4.1.训练描述
分析以下需求,并用代码实现:
1.根据工龄(整数)给员工涨工资(整数),工龄和基本工资通过键盘录入
2.涨工资的条件如下:
[10-15) +5000
[5-10) +2500
[3~5) +1000
[1~3) +500
[0~1) +200
3.如果用户输入的工龄为10,基本工资为3000,程序运行后打印格式"您目前工作了10年,基本工资为 3000元, 应涨工资 5000元,涨后工资 8000元"
代码实现:
import java.util.Scanner;
public class test07 {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
System.out.println("您的工龄为:");
int age=sc.nextInt();
int sum=3000;
if(age>=10&age<15){
sum+=5000; System.out.println("您的工资应涨5000,涨后工资为8000");
}else{
if(age>=5&age<10){
sum+=2500;System.out.println("您的工资应涨2500,涨后工资为5500");
}
else{
if(age>=3&age<5){
sum+=1000;System.out.println("您的工资应涨1000,涨后工资为4000"); }
else{
if(age>=1&age<3){
sum+=500;System.out.println("您的工资应涨500,涨后工资为3500");}
else{
System.out.println("输入的工龄无效");
}
}
}
}
}
}
5.训练案例5
5.1.训练描述
分析以下需求,并用代码实现:
1.功能描述:模拟计算器功能,对键盘录入的两个int类型的数据进行加、减、乘、除的运算,并打印运算结果
2.要求:
(1)键盘录入三个整数,其中前两个整数代表参加运算的数据,
第三个整数为要进行的运算(0:表示加法运算,1:表示减法运算,2:表示乘法运算,3:表示除法运算)
(2)使用今天所学知识完成功能
(3)演示格式如下:
请输入第一个整数:30
请输入第二个整数:40
请输入您要进行的运算(0:表示加法运算,1:表示减法运算,2:表示乘法运算,3:表示除法运算):0
控制台输出:30+40=70
代码实现
import java.util.Scanner;
public class test08 {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
System.out.println("请输入第一个整数:");
int a=sc.nextInt();
System.out.println("请输入第二个整数:");
int b=sc.nextInt();
System.out.println("请输入所需要的算法: (0代表加法,1代表减法,2代表乘法,3代表除法)");
int c=sc.nextInt();
int sum=0;
switch (c){
case 0:
sum=a+b;
System.out.println(a+"+"+b+"="+sum);
break;
case 1:
sum=a-b;
System.out.println(a+"-"+b+"="+sum);
break;
case 2:
sum=a*b;
System.out.println(a+"*"+b+"="+sum);
break;
case 3:
sum=a/b;
System.out.println(a+"/"+b+"="+sum);
break;
default:
System.out.println("您输入的有误");
}
}
}
6.训练案例6
6.1.训练描述
键盘录入月份,输出对应的季节
6.2.操作步骤描述
(1)键盘录入一个整数(代表月份,范围1-12)
(2)输出该月份对应的季节
3,4,5春季
6,7,8夏季
9,10,11秋季
12,1,2冬季
(3)演示格式如下:
请输入一个月份:3
控制台输出:3月份是春季
import java.util.Scanner;
public class test09 {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
System.out.println("请输入月份:");
int a=sc.nextInt();
switch (a){
case 3:
System.out.println("该月份是春季");
break;
case 4:
System.out.println("该月份是春季");
break;
case 5:
System.out.println("该月份是春季");
break;
case 6:
System.out.println("该月份是夏季");
break;
case 7:
System.out.println("该月份是夏季");
break;
case 8:
System.out.println("该月份是夏季");
break;
case 9:
System.out.println("该月份是秋季");
break;
case 10:
System.out.println("该月份是秋季");
break;
case 11:
System.out.println("该月份是秋季");
break;
case 12:
System.out.println("该月份是冬季");
break;
case 1:
System.out.println("该月份是冬季");
break;
case 2:
System.out.println("该月份是冬季");
break;
default:
System.out.println("您输入有误");
}
}
}